發起請求python
請求方法json
get、post、head、options、delete、put瀏覽器
傳遞URL參數服務器
構造一個字典,並在請求時將其傳遞給params參數cookie
提交數據時,遇到相同的參數名,但有不一樣的值,而python的字典又不支持鍵的重名,能夠把鍵的值用列表表示session
自定義Headerspost
自定義Cookies網站
在headers中添加編碼
cookies參數(必須爲字典形式)url
設置代理(proxies參數)
重定向
allow_redirects=False 禁止重定向
history 屬性能夠查看歷史記錄,從哪一個網站過來的,重定向過來的會顯示重定向的狀態碼
禁止證書驗證
把verify參數設置爲False
禁止證書驗證後,會有warning
關閉警告
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
設置超時 timeout屬性
以流形式下載 stream=True
接收響應
響應內容
text屬性,返回的是文本內容
字符編碼
Requests會自動的根據響應的報頭來猜想網頁的編碼是什麼,而後根據猜想的編碼來解碼網頁內容,基本上大部分的網頁都可以正確的被解碼
而若是發現text解碼不正確的時候,就須要本身手動的去指定解碼的編碼格式
二進制數據
若是須要得到原始的二進制數據,那麼使用content屬性便可
json數據
若是訪問以後得到的數據是JSON格式的,那麼可使用json()方法,直接獲取轉換成字典格式的數據
狀態碼
經過status_code屬性獲取響應的狀態碼
響應報頭
headers屬性
服務器返回的cookies
cookies屬性
查看訪問的url
url屬性
Session對象
在Requests中,實現了Session(會話)功能,當咱們使用Session時,可以像瀏覽器同樣,在沒有關閉瀏覽器時,可以保持住訪問的狀態
這個功能經常用於登錄以後的數據獲取,使咱們不用再一次又一次的傳遞cookies
首先生成一個Session對象,而後用這個Session對象來發起訪問,發起訪問的方法與正常的請求一摸同樣
須要注意的是,若是是在get()方法中傳入headers和cookies等數據,那麼這些數據只在當前這一次請求中有效
若是想要讓一個headers在Session的整個生命週期內都有效的話,須要進行設置:session.headers.updata(headers)