1. 程式人生 > >python 爬蟲爬取所有上市公司公告資訊(二)

python 爬蟲爬取所有上市公司公告資訊(二)

。,。設計公告資訊爬蟲面臨的主要問題在上一篇文章已經敘述過了,這篇文章我們選擇合適的資料來源和爬取的方式

首先選擇爬取的資料來源,這裡筆者經過多方比較,最終選擇了東方財富網作為公告爬蟲的資料來源。

下面以飛馬國際為例(002210)


我們可以看到,東方財富網專門設有網頁儲存對應股票的公告資訊,但通過翻頁操作觀察位址列,該網頁的股票公告連結是屬於ajax非同步載入。

根據前面的知識,爬取這種網頁我們可以選擇selenium+phantomjs模擬瀏覽器進行操作,或者通過構造介面拿到對應的資訊。

模擬瀏覽器的方法速度較慢,這裡我們採用構造資料介面的方式。開啟開發者工具進行翻頁操作。



新出現了js的請求,對應的url為資料的介面,開啟網址



。,。嗯,確實是對應的股票公告資訊,但可惜並不是json格式,我們可以採用正則表示式獲取對應的連結

針對介面的網址進行分析,筆者經過幾次嘗試之後,總結出東方財富網資料介面url格式大概如下

http://data.eastmoney.com/notices/getdata.ashx?StockCode=?&CodeType=1&PageIndex=?&PageSize=50&rt=50239182

其中stockcode對應股票的程式碼,pageindex對應公告的頁數

這表示我們只要拿到對應的上市公司所有股票的程式碼就可以構造出他們對應的公告資料url

股票程式碼的獲取我們還是選擇東方財富網

股票程式碼的網頁是純靜態網頁,直接使用xpath或者beautisfulsoup就可以抓取,比較簡單,這裡就不再贅述了。

將股票程式碼爬取之後儲存為txt或csv檔案,在構造介面時直接使用。

。,。資料來源已經選定,我們接下來構建資料的儲存結構。