Python Requests庫基本用法示例
本文實例講述了Python Requests庫基本用法。分享給大家供大家參考,具體如下:
requests是python的一個http client庫,提供了一套簡捷的API供開發(fā)者使用。下面簡單介紹一下其安裝和使用。這里是官方文檔。
0 安裝
pip install requests
1 發(fā)送請求
r=requests.get('https://www.baidu.com') print r.status_code,r.text r=requests.post('http://httpbin.org/post') r=requests.put('http://httpbin.org/put') r=requests.delete('http://httpbin.org/delete') r=requests.head('http://httpbin.org/head') r=requests.options('http://httpbin.org/')
2 發(fā)送get參數(shù)
param={'key1':value1,'key2':value2} r=requests.get('http://www.baidu.com/',params=param)
3 發(fā)送post參數(shù)
param={'key1':value1,'key2':value2} r=requests.post('http://www.baidu.com/',params=param) #表單格式 r=requests.post('http://www.baidu.com/',json=param) #json格式數(shù)據(jù) file= {'file':open('1.txt','rb')} r=reuqest.post('http://httpbin.org/post',files=file)
4 文件下載
with open('1.pic','wb') as pic: for chunk in response.iter_content(size): pic.write(chunk)
5 攜帶header
header={'key1':value1,'key2':value2} r=requests.get('http://www.baidu.com/',headers=header)
6 攜帶cookie
cookie={'key1':value1,'key2':value2} r=requests.get('http://www.baidu.com/',cookies=cookie)
7 重定向
默認requests是允許重定向的,并將重定向的歷史保存在response.history
數(shù)組中
如果不需要重定向,可以通過開關來關閉
r=requests.get('http://www.baidu.com/',allow_redirects=False)
8 使用代理
使用socks代理需要安裝三方擴展包
pip install requests[socks]
proxy={ 'http':'http://127.0.0.1:8000', 'https':'https://127.0.0.1:8080' 'http':'socks5://user:pass@127.0.0.1:8132' } r=requests.get('https://www.github.com/',proxies=proxy)
9 設置連接超時
r=requests.get('http://www.baidu.com/',timeout=2.5)
10 ssl證書
證書驗證
requests.get('https://kennethreitz.com', verify=True) requests.get('https://kennethreitz.com', cert=('/path/server.crt', '/path/key'))
如果指定本地證書及密鑰,則密鑰需要是解密的。
11 requests對象
r.url
r.text
r.headers
12 Response對象
response.request
對應的請求對象
response.raw socket
上直接獲得的數(shù)據(jù)
response.text
根據(jù)響應頭進行解碼的文本數(shù)據(jù)
response.content
不解碼,返回二進制數(shù)據(jù)
response.json()
對返回數(shù)據(jù)進行json解碼
response.headers
詞典形式存儲返回的headers
response.cookies
詞典形式存儲返回的cookies
更多關于Python相關內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
相關文章
Python?matplotlib實現(xiàn)折線圖的繪制
Matplotlib作為Python的2D繪圖庫,它以各種硬拷貝格式和跨平臺的交互式環(huán)境生成出版質(zhì)量級別的圖形。本文將利用Matplotlib庫繪制折線圖,感興趣的可以了解一下2022-03-03LyScript實現(xiàn)繞過反調(diào)試保護的示例詳解
LyScript插件中內(nèi)置的方法可實現(xiàn)各類反調(diào)試以及屏蔽特定API函數(shù)的功能,這類功能在應對病毒等惡意程序時非常有效。本文為大家提供了LyScript實現(xiàn)繞過反調(diào)試保護的示例代碼,感興趣的可以了解一下2022-08-08- 缺失值可能是數(shù)據(jù)科學中最不受歡迎的值,然而,它們總是在身邊。忽略缺失值也是不合理的,因此我們需要找到有效且適當?shù)靥幚硭鼈兊姆椒?。本文總結(jié)了四個Python查詢?nèi)笔е档姆椒ǎ枰目梢詤⒖家幌?/div> 2022-05-05
pycharm的debug調(diào)試以及異常,Python中錯誤的處理過程
這篇文章主要介紹了pycharm的debug調(diào)試以及異常,Python中錯誤的處理過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01Pyramid將models.py文件的內(nèi)容分布到多個文件的方法
默認的Pyramid代碼結(jié)構(gòu)中,就只有一個models.py文件,在實際項目中,如果需要對models進行分類,放到不同文件下,應該怎么辦2013-11-11PyCharm使用Docker鏡像搭建Python開發(fā)環(huán)境
這篇文章主要介紹了PyCharm使用Docker鏡像搭建Python開發(fā)環(huán)境,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12Django3.2 自動發(fā)現(xiàn)所有路由代碼詳解
這篇文章主要為大家介紹了Django自動發(fā)現(xiàn)所有路由的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2021-12-12最新評論