pythonrequests文件
1. Python中Requests庫的用法
在Python中,Requests庫是處理HTTP請求的首選工具。以下是使用Requests庫進行網路數據採集的方法:
首先,需要使用pip安裝Requests庫:
$ pip install requests
安裝完成之後,可以進行基本的GET請求。例如,獲取JSON文件:
import requests
r = requests.get("a.json")
print(r.text)
print(r.json())
如果需要獲取原始套接字響應,可以設置stream=True:
r = requests.get('github.com/timeline.js', stream=True)
r.raw
r.raw.read(10)
添加headers信息同樣可以通過參數傳遞:
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
headers = {'content-type': 'application/json'}
r = requests.get("httpbin.org/get", params=payload, headers=headers)
print(r.url)
POST請求可以通過data參數傳遞參數,或者使用json.mps()序列化JSON格式的數據。例如:
import requests
payload = {'some': 'data'}
r = requests.post('httpbin.org/post', data=payload)
print(r.text)
import json
url = 'httpbin.org/post'
payload = {'some': 'data'}
r = requests.post(url, data=json.mps(payload))
print(r.text)
文件上傳可以通過files參數傳遞類文件對象:
import requests
url = 'httpbin.org/post'
files = {'file': open('test.txt', 'rb')}
r = requests.post(url, files=files)
print(r.text)
Requests庫支持流式上傳,方便發送大量數據而無需先將其讀入內存。
獲取cookies可以通過cookies變數,發送cookies信息同樣可以通過cookies變數實現。
超時配置可以通過timeout參數設置最大請求時間,但僅對連接過程有效。
會話對象可以用於保持持久的會話,全局配置可以通過Session實例實現。
SSL證書驗證可以在請求中使用verify參數檢查SSL證書,如果需要跳過驗證,可以將verify設置為False。
使用代理可以通過proxies參數配置單個請求的代理。
以上介紹了Requests庫的基本用法,包括安裝、GET和POST請求、cookies、超時、會話、SSL證書驗證和代理等。