python中requests的常用方法_python3 Requests常用操作
Requests是用Python語言編寫的基于urllib,采用Apache2 Licensed開源協議的HTTP庫。它比urllib庫更加方便。是一個簡單易用的HTTP庫。
安裝pip3 install requests
各種請求方式
get方式(帶參數)# 方式一:
payload = {'key1':'value1','key2':'value2'}
# 注意字典里值為None的鍵都不會被添加到 URL 的查詢字符串里。
r=requests.get("http://httpbin.org/get",params=payload,headers=dict,timeout = 1)
# 方式二:
r=requests.get("http://httpbin.org/get?name=hello&age=12)
post方式r=requests.get("http://httpbin.org/get",data=payload,headers=dict)
文件上傳files={'file':open('report.xls','rb')}
r=requests.post(url,files=files)
response對象
屬性:response.status_code
response.content ?#獲取二進制數據,返回字節流,通常用在下載圖片/視頻中。
response.text ? ?#響應內容,字符串類型,不需要decode
response.json() ?#對于返回的json數據,可以調用該方法獲得json對象,實際上是執行了json.loads(response.text))
response.cookies ? #urllib中需要聲明cookiejar,handler,opener等
response.url
response.encoding
response.headers
狀態碼:可以用有含義的值來代替r=requests.get("http://httpbin.org/get",data=payload,headers=dict)
if r.status_code == requests.codes.ok:? #if r.status_code == 200:
print("successfully")
會話維持
前一次訪問獲得的cookie,被后一次的訪問使用。
通過session來完成import requests
s ?= requests.Session()
s.get("https://httpbin.org/cookies/set/number/123456")? #訪問url,獲得響應的cookie
response = s.get("https://httpbin.org/cookies")
證書認證
對于https的網站,訪問時,首先會對證書進行驗證r = requests.get("https://www.12306.cn") ?#SSLError,因為12306的證書非官方
可以通過指定verify參數來決定是否進行證書認證r = requests.get("https://www.12306.cn",verify=False)
#但仍然有警告信息,可以通過以下方法消除
from requests.packages import urllib3
urllib3.disable_warnings()
可以通過指定證書r = requests.get("https://www.12306.cn",cert=(path))
認證設置
有些網站在訪問時需要輸入用戶名和密碼,可以通過auth參數來制定r = requests.get(url,auth=('user','123')
代理設置
http/https代理#如果代理有賬號密碼,可以通過以下方式指定;沒有的話,可以去掉
proxies = {
"http":"http://user:password@127.0.0.1:9743"
}
r = requests.get("www.baidu.com",proxies = proxies)
socks代理pip3 install 'requests[socks]'
proxies = {
"http":"socks5://127.0.0.1:9743"
}
r = requests.get("www.baidu.com",proxies = proxies)
總結
以上是生活随笔為你收集整理的python中requests的常用方法_python3 Requests常用操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 必背单词_研究生满大街走?真实数据来啦
- 下一篇: python配置核_浅谈pytorch卷