1 數(shù)據(jù)采集概述

開始一個數(shù)據(jù)分析項目,首先需要做的就是get到原始數(shù)據(jù),獲得原始數(shù)據(jù)的方法有多種途徑。比如:

  1. 獲取數(shù)據(jù)集(dataset)文件

  2. 使用爬蟲采集數(shù)據(jù)

  3. 直接獲得excel、csv及其他數(shù)據(jù)文件

  4. 其他途徑…

本次福布斯系列數(shù)據(jù)分析項目實戰(zhàn),數(shù)據(jù)采集方面,主要數(shù)據(jù)來源于使用爬蟲進行數(shù)據(jù)采集,同時也輔助其他數(shù)據(jù)進行對比。

本文主要是介紹使用爬蟲進行數(shù)據(jù)采集的思路和步驟。

本次采集的福布斯全球上市企業(yè)2000強排行榜數(shù)據(jù),涉及年份從2007年到2017年,跨越10多年。

本次采集的目標網站,是多個網頁,但多個網頁的分布結構都有所不同,雖然思路和步驟都差不多,但需要分開來編寫,分別采集。

2 數(shù)據(jù)采集步驟

數(shù)據(jù)采集大體分為幾步:

  1. 目標主網頁內容的Download

  2. 主網頁上數(shù)據(jù)的采集

  3. 主網頁上其他分發(fā)頁面網站鏈接的采集

  4. 各分發(fā)網頁數(shù)據(jù)的download與采集

  5. 將采集的數(shù)據(jù)保存

涉及到的python庫包括,requests、BeautifulSoup以及csv。 下面以采集某年的數(shù)據(jù)為案例,來描述下數(shù)據(jù)采集的步驟。

import requestsfrom bs4 import BeautifulSoupimport csv

2.1 數(shù)據(jù)Download模塊

主要是基于 requests,代碼如下:

def download(url):
    headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59
        
		

網友評論