requests库安装
pip install requests
发送GET请求
1.通过get请求
response = requests.get("网址")
.
2.添加headers和查询参数
import requests
kw = {'wd':'XX'}
headers = {"User-Agent":"..."}
response = requests.get("网址",params = kw,headers = headers)
response.text和response.content的区别
1.response.content是直接从网络上面抓取的数据,没有经过任何解码,所以是一个bytes类型,其实在硬盘上和网络上传输的字符串都是bytes类型
2.response.text是str的数据类型,是requests库将response.content进行解码的字符串,解码需要指定一个编码方式,requests会根据自己的猜测来判断编码的方式,所以有时候可能会猜测错误,就会导致乱码,这时应该使用response.content.decode('utf-8')
进行手动解码
发送POST请求
1.通过post请求
response = requests.post("网址",data=data)
如果返回的是json数据。那么可以调用response.json()
2.传入data数据
import requests
url = "网址"
headers = {
'User-Agent':'...'
'Referer':'...'
}
data = {
'kd':'python'
}
resp = requests.post(url.headers=headers,data=data)
使用代理
使用requests添加代理只要在请求的方法中传递proxies参数就可以了
import requests
url = '网址'
headers = {'User-Agent':'...'}
proxy = {'代理网址'}
resp = requests.get(url,headers=headers,proxies=proxy)
处理cookie
如果想要在多次请求中共享cookie,那么应该使用session。
session = request.Session()
session.post(url,data=data,headers=headers)
response = session,get('网址')