BeautifulSoup解析庫select方法例項——獲取企業資訊
本文內容由浙江浦江中學方春林老師提供。
Requests 是用Python語言編寫,基於urllib,採用Apache2 Licensed 開源協議的 HTTP 庫。它比 urllib 更加方便,可以節約我們大量的工作,完全滿足 HTTP 測試需求。Requests 的哲學是以PEP 20的習語為中心開發的,所以它比urllib更加Pythonic。更重要的一點是它支援 Python3 哦!
1、requests簡單用法
2、解析HTML庫——BeautifulSoup簡介
使用requests獲取的是HTML頁面,在HTML中除了html標記如<title>,<p>外,還有很多 CSS程式碼。可以使用BeautifulSoup庫解析HTML,利用BeautifulSoup物件的select方法可以篩選出css標記的內容。有如下幾種方法獲取內容:
①通過標籤名查詢
②通過類名查詢
③通過id名查詢
④組合查詢。組合查詢即和寫 class 檔案時,標籤名與類名、id名進行的組合原理是一樣的,例如查詢p標籤中,id等於link1的內容,二者不要用空格分開。
⑤屬性查詢。查詢時還可以加入屬性元素,屬性需要用中括號括起來,注意屬性和標籤屬於同一節點,所以中間不能加空格,否則會無法匹配到。不在同一節點的使用空格隔開,同一節點的不加空格。
以下面的HTML程式碼為例:
分析程式碼如下:
輸出結果如下:
3、例項:爬取https://m.tianyancha.com/search/oc35-s2/p1中企業資訊。
有了以上知識後,我們可以利用上述知識獲取企業資訊,在天眼查網站裡有各類企業資訊,開啟https://m.tianyancha.com/search/oc35-s2,如下圖是頁面資訊
我們的任務是獲取企業資訊,具體步驟如下:
1)獲取頁面資訊,用google瀏覽器開啟的頁面中右鍵開啟檢查,依次點開 network--doc--headers中的Request URL,這個地址是我們要爬取頁面的地址。
用res=requests.get(‘https://m.tianyancha.com/search/oc35-s2/’) 返回requests物件得到該頁面所有內容。
2)分析內容,獲取內容 檢視原始碼後發現我們要找企業資訊在一個“<div class="search_result_container">”容器中,可以用select方法獲取所有內容;
公司名稱在“<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”> 中,如下圖
參考程式碼:
程式碼執行結果:
----------相關閱讀----------
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使用Scrapy爬蟲框架爬取天涯社群小說“大宗師”全文
Python爬蟲擴充套件庫BeautifulSoup4用法精要
淡定!不要因為納入了高考和二級考試甚至極個別小學課程就盲目誇大Python!
----------喜大普奔----------
1、董付國老師Python系列教材:
《Python程式設計基礎》
《Python程式設計(第2版)》
《Python可以這樣學》
《Python程式設計開發寶典》
《中學生可以這樣學Python》
董付國老師6本Python系列教材被北大、復旦等近百所高校選作教材
2、董老師免費視訊地址: https://pan.baidu.com/s/1jJeAs8Q 密碼: px59
相關文章
- javascript this 用法例項程式碼解析JavaScript
- Java的clone()用法例項解析Java
- 透過Requests模組獲取網頁內容並使用BeautifulSoup進行解析網頁
- js獲取select下拉選單的所有option項JS
- Java解析微信獲取手機號資訊Java
- javascript獲取select下拉選單所有項的內容JavaScript
- jquery獲取select下拉選中option項的value值jQuery
- Java反射獲取類和物件資訊全解析Java反射物件
- Android如何獲取手機各項資訊Android
- js獲取select下拉選單中option項的數目JS
- 獲取select下拉選單預設選中項的索引索引
- js獲取select選中項的值和文字內容JS
- 原生js如何獲取選中的select下拉項的值JS
- jQuery獲取選中核取方塊的值程式碼例項jQuery
- 利用requests+BeautifulSoup爬取網頁關鍵資訊網頁
- BeautifulSoup庫
- js獲取select的值JS
- 獲取資料庫bak檔案資訊資料庫
- Sigar獲取作業系統資訊作業系統
- 爬蟲例項-淘寶頁面商品資訊獲取爬蟲
- 獲取選中checkbox核取方塊的值程式碼例項
- 更改select下拉選單項獲取對應的值和文字
- js如何獲取select下拉選單的預設選中項JS
- js獲取當前select下拉選單選中項的值JS
- 獲取企業裁判文書介面 - GetJudicialDocuments
- js獲取瀏覽器版本作業系統等資訊程式碼例項JS瀏覽器作業系統
- PHP物件導向程式設計中獲取物件屬性的3種方法例項分析PHP物件程式設計
- 爬蟲入門系列(四):HTML 文字解析庫 BeautifulSoup爬蟲HTML
- 雙項榮耀|海泰方圓斬獲第二屆密碼豐會“成長力企業獎”“創新力企業獎”密碼
- jquery如何獲取select下拉選單選中項的值和文字jQuery
- js獲取並解析xml檔案程式碼例項JSXML
- mac獲取cpu資訊Mac
- 獲取資訊版本1
- 安卓sdk webview獲取淘寶個人資訊100項,原始碼。安卓WebView原始碼
- 企業微信-自建H5應用授權登入獲取使用者資訊H5
- psutil獲取作業系統負載資訊作業系統負載
- BeautifulSoup4庫
- 封裝type方法例項封裝