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证书验证和代理等。