1. 程式人生 > >Python爬蟲:HTTP協議、Requests庫

Python爬蟲:HTTP協議、Requests庫

.org clas python爬蟲 print 通用 娛樂 信息 傳輸協議 介紹

HTTP協議:

HTTP(Hypertext Transfer Protocol):即超文本傳輸協議。URL是通過HTTP協議存取資源的Internet路徑,一個URL對應一個數據資源。

HTTP協議對資源的操作:

技術分享

Requests庫提供了HTTP所有的基本請求方式。官方介紹:http://www.python-requests.org/en/master

Requests庫的6個主要方法:

技術分享

Requests庫的異常:

技術分享

Requests庫的兩個重要對象:Request(請求)、Response(相應)。Request對象支持多種請求方法;Response對象包含服務器返回的所有信息,也包含請求的Request信息。

Response對象的屬性:

技術分享

其中,r.encoding指:如果header中不存在charset,則認為編碼為ISO‐8859‐1。

r.raise_for_status()可以直接知道r.status_code是否等於200。

HTTP協議與Requests庫對比:

技術分享

爬取網頁的通用代碼框架:

try:     r = requests.get(url,timeout = 30)     r.raise_for_status()     # 如果狀態不是200,引發HTTPError異常     r.encoding = r.apparent_encoding     return r.text except:     return ‘產生異常‘

例如,獲取PMCAFF首頁的信息:

 
‘     print(getHtmlText(url))

巨弘娛樂 juhongyulept.com
新貝娛樂 xinbeiyuLe.cn
吉美娛樂 jimeiyulept.com
無極娛樂 wujiyule88.cn
七彩娛樂 qicaiyulept.cn

Python爬蟲:HTTP協議、Requests庫