requests庫python
requests庫是python實現的最簡單易用的http庫。json
requests庫的功能詳解。瀏覽器
咱們能夠天然而然地想到這些方法其實就是http協議對資源的操做。服務器
調用requests的get方法就是構造一個向服務器請求資源的requests對象,這個對象會返回一個包含服務器資源的response對象。cookie
下面咱們主要來說如下requests庫的request方法dom
request()中的參數post
------------url:擬獲取頁面的url連接url
------------**kwargs:控制訪問的參數,均爲可選項spa
params : 字典形式,將params以字典的方式做爲傳入url中。設計
headers :字典形式,http定製頭,咱們能夠這個來把爬蟲假裝成瀏覽器。
data:字典形式、字符串或文件對象,用於向服務器提供或提交數據,做爲request的內容
import requests; data={'id':"me","age":10}r=requests.request('post',"http://www.baidu.com",data=data); data="人生苦短,及時行樂";r=requests.request('post',"http://www.baidu.com",data=data);
json :json格式的數據,做爲request的內容。
timeout :設置超時時間,以秒爲單位,在規定的時間沒有返回,拋出timeout異常。
不經常使用參數:
allow_redicts: True/False 默認爲True,重定向開關
stream:True/False 默認爲True 獲取內容當即下載
verify:True/False 默認爲True 認證數字證書開關
cert :本地SSL路徑
高級參數:
1.獲取cookie
cookies: 咱們能夠使用cookies參數傳入咱們設計好的cookies到服務器,此外,咱們也能夠經過cookies參數,獲取響應cookie的一些值。
//獲取cookie
import requests
url = 'http://httpbin.org/cookies';
response = requests.get(url) ;
print(response.cookies);
//向服務器傳入cookie
import requests
url = 'http://httpbin.org/cookies'
cookies = { 'domain':'httpbin.org', }
response = requests.get(url, cookies=cookies) ;
print(response.text);
2.上傳文件
files:字典類型,文件傳輸
import requests url = "http://www.baidu.com"; fs={"files":open("F://imgs//timg.jpg","rb")}; r=requests.request("post",url,files=fs);
3.設置代理
所謂代理,其實就是把一件事交給別人去作。當咱們使用代理去訪問服務器時,本機會將請求先發到代理,而後在由代理髮到服務器。當接收服務器的響應時,先是代理收到響應,再轉發到本機。
import requests proxies={ "http":"http://127.0.0.1:9743", "https":"https://127.0.0.1:9743", } r=requests.request("get","http://www.baidu.com",proxies=proxies); print(r.status_code);
再看一遍Requests庫的7個主要方法
其實,get()/post()/head()/put()/patch()/delete()方法,均可以用request方法來取代,其參數也大致相同。