微信公眾號:Fintech極客
作者為軟體開發工程師,就職于金融資訊科技類公司,通過CFA一級,分享計算機和金融相結合領域的技術和知識,
A股資料分析之收集資料:公司詳細資訊
分析股票時, 我們往往需要查看公司的一些基本資訊,當然可以在網上搜索公司名稱,然后進入其官方網站查看,但是如果想獲取很多公司的資訊,這種人工的方式肯定是不行的,本文主要介紹如何用Python從網路上抓取公司的詳細資訊,
許多財經網站上都有上市公司的介紹資訊,比如新浪財經,網易財經和東方財富網,經過對比發現,網易財經的資訊更規整也更容易獲取一些,在瀏覽器中輸入網址:http://quotes.money.163.com/f10/gszl_600011.html, 將打開如下所示的網頁:

該網頁中包含華能國際的公司資料資訊,如公司簡介,IPO資料,公司高管等等,下面我們就一起看看如何使用Python把其中的公司簡介和IPO資料資訊抓取下來,
我們會用到python的兩個庫:1.requests 2.bs4,如果沒有安裝,請使用pip或者Anaconda進行安裝,
第一步,我們稍加分析一下網址 http://quotes.money.163.com/f10/gszl_600011.html, 就會發現網址的最后一部分 gszl_600011.html 中的gszl是公司資料的漢語拼音縮寫,下劃線后面的600011是股票代碼,所以給定任意股票代碼,我們只需要替換掉網址中的股票代碼就能得到新股票的公司資料url
第二步,我們引入要使用的庫,然后使用requests獲取相應的頁面,具體代碼和執行情況如下所示:

第三步,我們獲取html之后,就可以使用bs4中的BeautifulSoup類來決議了它了,首先,在獲得的html文本中找到我們想要的資訊(使用Notepad等檔案編輯器打開,并搜索即可),會發現我們想要的資訊就table標記中,而該table的class屬性中包含table_details,如下圖所示:

所以我們可以使用BeautifulSoup的select函式來獲取這些table,代碼如下:

獲得table之后,我們就可以通過如下的代碼來得到具體的公司資訊了,資訊最后會放到名為result的字典中,以下是執行結果截圖:

到此,獲取公司基本資訊的方法就介紹完畢了,讀者只需把相應的代碼封裝成函式,并傳入相應的url即可獲得相應的dic,關于url的構造,請參考第一步中的決議,
完整的notebook請參見:https://github.com/DerekLoveCC/Writings/blob/master/Fintech_Wechat/Code/AStockDataAnalysis/CrawlCompanyDetailInfo.ipynb
在下一篇文章中,會介紹如何獲得公司所屬的板塊資訊

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/187342.html
標籤:Python
