1. 程式人生 > >生產者消費者模型爬取某金融網站資料!Python無所不爬!

生產者消費者模型爬取某金融網站資料!Python無所不爬!

那麼這個模型和爬蟲有什麼關係呢?其實,爬蟲可以認為是一個生產者,它不斷從網站爬取資料,爬取到的資料就是食物;而所得資料需要消費者進行資料清洗,把有用的資料吸收掉,把無用的資料丟棄。

以上便是對生產者消費者模型的簡單介紹了,下面針對本次爬取任務予以詳細說明。

分析站點

http://www.cfachina.org/cfainfo/organbaseinfoServlet?all=personinfo

從網址及網頁內容可以提取出以下資訊:

  1. 網址

獲取機構名稱

獲取機構資訊對應的網頁數量

每個機構的資料量是不等的,幸好每個頁面都包含了當前頁面數及總頁面數。使用以下程式碼即可獲取頁碼數。

獲取當前頁面從業人員資訊

確定爬取方案

一般的想法當然是逐頁爬取主頁資訊,然後獲取每頁所有機構對應的網頁連結,進而繼續爬取每個機構資訊。

但是由於該網站的機構資訊網址具有明顯的規律,我們根據每個機構的編號便可直接得到每個機構每個資訊頁面的網址。所以具體爬取方案如下:

main

主函式用於建立和啟動生產者執行緒和消費者執行緒,同時為生產者執行緒提供機構編號佇列。

原始碼

原始碼圖如果看不清,請儲存到本地觀看!原始碼群:125240963