python網路爬蟲一
阿新 • • 發佈:2018-11-10
大概框架
Request庫的安裝
- 爬取網頁最好用的第三方庫
- 直接安裝即可(用於OS X)
pip3 install requests
- request庫的常用方法:
- request庫一共有七個常用方法。一個基本方法是request方法,其他的方法都是呼叫request方法實現的。
get方法
- 獲取網頁最簡單的方法就是get方法
r = requests.get(url)
- 通過get方法+url獲得一個向伺服器請求資源的Request物件。注意python是嚴格區分大小寫的,這個Request和我們說的request是不同的。
- request.get()返回一個Response
Response物件
看一段程式碼:
Response物件包含了伺服器返回的所有資訊。
- Response物件的屬性:
- 一般的解析流程:
一個例子
- 狀態編碼為200,說明返回資訊成功。
- 但是我們檢視r的text屬性時,卻發現了亂碼,於是我們去檢查r的編碼方式:
- 用r.apparent_encoding的utf-8編碼替換r.encoding的ISO編碼方式可以正常顯示中文資訊。這是為什麼呢?
- r.encoding是從header中提取charset欄位的編碼方式,但是並非所有網站都有charset欄位,如果沒有charset欄位時預設返回ISO-8859-1型別,而這個型別是不能解析中文的。
- r.apparent_encoding是根據http的內容部分實實在在分析內容的可能編碼型別,更加準確!