BeautifulSoup解析庫select方法例項——獲取企業資訊

Python_小屋發表於2018-01-18

本文內容由浙江浦江中學方春林老師提供。

Requests 是用Python語言編寫,基於urllib,採用Apache2 Licensed 開源協議的 HTTP 庫。它比 urllib 更加方便,可以節約我們大量的工作,完全滿足 HTTP 測試需求。Requests 的哲學是以PEP 20的習語為中心開發的,所以它比urllib更加Pythonic。更重要的一點是它支援 Python3 哦!

1、requests簡單用法

640?wx_fmt=png&wxfrom=5&wx_lazy=1

2、解析HTML庫——BeautifulSoup簡介

使用requests獲取的是HTML頁面,在HTML中除了html標記如<title>,<p>外,還有很多 CSS程式碼。可以使用BeautifulSoup庫解析HTML,利用BeautifulSoup物件的select方法可以篩選出css標記的內容。有如下幾種方法獲取內容:
①通過標籤名查詢
②通過類名查詢
③通過id名查詢
④組合查詢。組合查詢即和寫 class 檔案時,標籤名與類名、id名進行的組合原理是一樣的,例如查詢p標籤中,id等於link1的內容,二者不要用空格分開。
⑤屬性查詢。查詢時還可以加入屬性元素,屬性需要用中括號括起來,注意屬性和標籤屬於同一節點,所以中間不能加空格,否則會無法匹配到。不在同一節點的使用空格隔開,同一節點的不加空格。

以下面的HTML程式碼為例:

0?wx_fmt=png

分析程式碼如下:

0?wx_fmt=png

輸出結果如下:

0?wx_fmt=png

3、例項:爬取https://m.tianyancha.com/search/oc35-s2/p1中企業資訊。

有了以上知識後,我們可以利用上述知識獲取企業資訊,在天眼查網站裡有各類企業資訊,開啟https://m.tianyancha.com/search/oc35-s2,如下圖是頁面資訊

0?wx_fmt=png

我們的任務是獲取企業資訊,具體步驟如下:

1)獲取頁面資訊,用google瀏覽器開啟的頁面中右鍵開啟檢查,依次點開 network--doc--headers中的Request URL,這個地址是我們要爬取頁面的地址。

0?wx_fmt=png


用res=requests.get(‘https://m.tianyancha.com/search/oc35-s2/’) 返回requests物件得到該頁面所有內容。

2)分析內容,獲取內容 檢視原始碼後發現我們要找企業資訊在一個“<div class="search_result_container">”容器中,可以用select方法獲取所有內容;


0?wx_fmt=png


公司名稱在“<div class="col-xs-10 search_name pl0 pr0"><a href="/company/3565313" style="word-break:break-all;" class="query_name in-block" onclick="common.stopPropagation(event)"><span style="color:#2e2e2e;">杭叉集團股份有限公司</span></a></div>”中,而其他資訊都在<div class=”title”> 中,如下圖

0?wx_fmt=png


參考程式碼:

0?wx_fmt=png

程式碼執行結果:

0?wx_fmt=png



----------相關閱讀----------

1900頁Python系列PPT分享一:基礎知識(106頁)

1900頁Python系列PPT分享二:Python序列(列表、元組、字典、集合)(154頁)

1900頁Python系列PPT分享三:選擇與迴圈結構語法及案例(96頁)

1900頁Python系列PPT分享四:字串與正規表示式(109頁)

1900頁Python系列PPT分享五:函式設計與應用(134頁)

1900頁Python系列PPT分享六:物件導向程式設計(86頁)

1900頁Python系列PPT分享七:檔案操作(132頁)


Python批量爬取微信公眾號文章中的圖片

Python裸奔也瘋狂:批量爬取中國工程院院士資訊

Python爬蟲擴充套件庫scrapy選擇器用法入門(一)

Python使用Scrapy爬蟲框架爬取天涯社群小說“大宗師”全文

Python不使用scrapy框架而編寫的網頁爬蟲程式

Python爬蟲擴充套件庫BeautifulSoup4用法精要


又一個學期結束了,送給在校大學生幾句話

淡定!不要因為納入了高考和二級考試甚至極個別小學課程就盲目誇大Python!

全國計算機等級考試二級Python考試大綱預測和分析

大家都在學Python,你和別人的差距在哪?

大學生們顫抖吧,中學生已經開始學Python了!

祝所有程式設計師1024節日快樂

學會提問,你就成功了一大半!

盤點那些讓人上火的提問方式(論如何讓交流更高效)


----------喜大普奔----------

1、董付國老師Python系列教材:

《Python程式設計基礎》

《Python程式設計(第2版)》

《Python可以這樣學》

《Python程式設計開發寶典》

《中學生可以這樣學Python》

董付國老師6本Python系列圖書閱讀指南

董付國老師6本Python系列教材被北大、復旦等近百所高校選作教材

熱烈慶祝《Python可以這樣學》在臺灣發行繁體版


2、董老師免費視訊地址: https://pan.baidu.com/s/1jJeAs8Q 密碼: px59


相關文章