Request库的安装与使用
Request庫的安裝與使用
安裝
pip install reqeusts
Requests庫的7個主要使用方法
- requests.request() 構(gòu)造一個請求,支撐以下各方法的基礎(chǔ)方法
- requests.get() 獲取HTML網(wǎng)頁的主要方法,對應(yīng)HTTP的GET方法
- requests.head() 獲取HTML網(wǎng)頁頭信息的方法,對應(yīng)HTTP的HEAD
- requests.post() 向HTML網(wǎng)頁提交POST請求的方法,對應(yīng)HTTP的POST
- requests.put() 向HTML網(wǎng)頁提交PUT請求的方法,對應(yīng)HTTP的PUT
- requests.patch() 向HTML網(wǎng)頁提交局部修改請求,對應(yīng)于HTTP的PATCH
- requests.delete() 向HTML頁面提交刪除請求,對應(yīng)HTTP的DELETE
Response對象的屬性
- r.status_code HTTP請求的返回狀態(tài),200表示連接成功,404表示失敗
- r.text HTTP響應(yīng)的正文字符串
- r.encoding 從HTTP header中猜測的響應(yīng)內(nèi)容編碼方式
- r.apparent_encoding 從內(nèi)容中分析出的響應(yīng)編碼方式
- r.content HTTP響應(yīng)內(nèi)容的二進(jìn)制形式
使用get方法的流程
檢查r.status_code,如果返回200,繼續(xù)處理,如果返回404,則說明訪問出錯。
encoding 和 apparent_encoding的區(qū)別
encoding是header的charset中記錄的編碼,若沒有改標(biāo)簽,則默認(rèn)為iso-8859-1
apparent_encoding是分析文本內(nèi)容中出現(xiàn)的字符確定的編碼。
一般來說如果文本編碼識別錯誤,可以將apprent_encoding賦值給r.encoding
Requests庫的異常
requests.ConnectionError 網(wǎng)絡(luò)連接錯誤異常,如DNS查詢失敗、拒絕連接
requests.HTTPError HTTP錯誤異常
requests.URLRquired URL確實(shí)異常
requests.TooManyRedirects 超過最大重定向次數(shù),產(chǎn)生重定向異常
requests.ConnectTimeout: 遠(yuǎn)程連接超時異常
requests.Timeout: 請求URL超時,產(chǎn)生超時異常
r.raise_for_status() 如果返回的狀態(tài)碼不是200,則會產(chǎn)生requests HTTPError異常
request方法
requests.requst(method,url,**kwargs)
-
method:請求方式,對應(yīng)get/put/post等7種
r = requests.request(‘GET’,url,**kwargs)
r = requests.request(‘HEAD’,url,**kwargs)
r = requests.request(‘POST’,url,**kwargs)
r = requests.request(‘PUT’,url,**kwargs)
r = requests.request(‘PATCH’,url,**kwargs)
r = requests.request(‘DELETE’,url,**kwargs)
r = requests.request(‘OPTIONS’,url,**kwargs)
url:頁面的鏈接
**kwargs: 控制訪問的參數(shù),共13個
- params: 字典或字節(jié)序列,作為參數(shù)增加到url中
- data: 字典、字節(jié)序列或文件對象,作為Request的內(nèi)容
- json: JSON格式的數(shù)據(jù),作為Request的內(nèi)容
- header: 字典,HTTP定制頭
- cookies:字典或CookieJar,Request中的cookie
- auth :元組,支持HTTP認(rèn)證功能
- files: 字典類型,傳輸文件
- timeout:給請求設(shè)置超時時間
- proxies: 字典類型,設(shè)定訪問代理服務(wù)器,可以增加登錄認(rèn)證
- allow_redirects: True/False,默認(rèn)為True,重定向開關(guān)
- stream: True/False,默認(rèn)為True,獲取內(nèi)容立即下載開關(guān)
- verify: True/False,默認(rèn)為True,認(rèn)證SSL證書開關(guān)
- cert: 本地SSL證書路徑
轉(zhuǎn)載于:https://www.cnblogs.com/infoflow/p/8975274.html
總結(jié)
以上是生活随笔為你收集整理的Request库的安装与使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Disruptor 线程间共享数据无需竞
- 下一篇: git 版本操作命令大全