requests模块

来源:互联网 发布:淘宝商城厨房用具 编辑:程序博客网 时间:2024/05/29 18:47
requests.get(url,params=None,**kwargs)

#params:添加到URL中的参数
#**kwargs:传入多组参数(字典)
发送一个请求,返回一个相应,类型为requests.response对象(数据安全,用于查询)


requests.post(url,data=None,json=None,**kwargs)

#data:发送的数据
#json:json类中要发送的请求数据
发送一个请求,返回一个requests.response对象。向服务器发送修改请求


request.delete(url,**kwargs)

删除数据,可通过get/post来实现


requests.put(url,data=None,**kwargs)

增加、放置数据,可通过get/post来实现


requests.head(url,**kwargs)

发送一个请求


requests.options(url,**kwargs)

发送一个请求


r.stuats_code

返回网页状态码


r.text

打印网页信息


r.encoding

打印编码


content

打印二进制响应内容


r.json()

json响应内容,失败抛出一个异常


r.raw

获取服务器的原始套接字响应(流)
文本流保存:

with open(filename,'wb') as fd:    for chunk in r.iter_content(chunk_size):         fd.write(chunk)

    headers = {'uesr-agent':'my-app/0.0.1'}    r  =  requests.get(url,headers = headers)   

定制请求头
#定制header的优先级低于某些特定的用户认证信息
1.重定向别的主机,授权header就会被删除
2.代理授权header会被URL中提供的代理身份覆盖
3.在我们能判断内容长度的情况下,header的Content-Length会被改写


r = requests.post(url,data=json.dump(payload))

post接受json数据


>>>r.status_code == requests.code.okTrue 

状态码查询对象


raise_for_ststus()

抛出错误请求异常


 hearders headerd['Content-Type'] headers.get('content-type')

响应头(返回字典,大小写不敏感)


 r.cookie[]

访问cookie


r = requests.get(url,cookies = cookies)

发送cookie
返回的对象为RequestsCookieJar,行为和字典类似


r.history

返回历史
返回一个列表按照由远到近的请求进行排序


r = requests.get(url,allow_redirects = False)

禁止重定向


requests.get(url,timeout = 0.001)

设置超时


s = requests,Session()

保持连接


prepped = req.prepped()prepped = req.prepare_request()

额外处理