一、简介
requests是python的第三方的http库
- 可以用它来玩长城大部分HTTP协议行为,例如:head,get,post,put,patch,delete等
- 可以用它来完成大部分浏览器行为,例如:登录,保持状态、登出货,302跳转
- 可以用他来完成一些浏览器不允许的行为,例如:跨域,伪造,接口测试
#安装
pip install requests
#验证
pip show requests
#其他请求模块
aiohttp 异步请求模块
二、requests的使用
?1.get请求
# 1、无参数实例
import requests
ret = requests.get('https://github.com/timeline.json')
print ret.url
print ret.text
# 2、有参数实例
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
ret = requests.get("http://httpbin.org/get", params=payload)
print ret.url
print ret.text
2.post请求?
# 1、基本POST实例
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
ret = requests.post("http://httpbin.org/post", data=payload)
print ret.text
# 2、发送请求头和数据实例
import requests
import json
url = 'https://api.github.com/some/endpoint'
payload = {'some': 'data'}
headers = {'content-type': 'application/json'}
ret = requests.post(url, data=json.dumps(payload), headers=headers)
print ret.text
print ret.cookies
3.其他请求
requests.get(url, params=None, **kwargs)
requests.post(url, data=None, json=None, **kwargs)
requests.put(url, data=None, **kwargs)
requests.head(url, **kwargs)
requests.delete(url, **kwargs)
requests.patch(url, data=None, **kwargs)
requests.options(url, **kwargs)
# 以上方法均是在此方法的基础上构建
requests.request(method, url, **kwargs)
三、requests响应?
- r.status_code 响应状态码
- r.heards 响应头
- r.cookies 响应cookies
- r.text 响应文本
- r. encoding 当前编码
- r. content 以字节形式(二进制)返回
?
|