1、Request库方法介绍
2、GET请求
import requests
r = requests.get('http://www.baidu.com')
print(r.status_code)
该代码实现了get请求输出了状态码。
输出
200
构造请求链接:利用params参数
import requests
payload = {'key1':'value1','key2':'value2'}
r = requests.get('http://httpbin.org/get',params=payload)
print(r.url)
params:url中的额外参数,字典或字节流格式,可选
输出 http://httpbin.org/get?key1=value1&key2=value2
3、request对象的属性
import requests
payload = {'key1':'value1','key2':'value2'}
r = requests.get('http://httpbin.org/get',params=payload)
print(r.text)
print(r.status_code)
print(r.content)
输出
{
"args": {
"key1": "value1",
"key2": "value2"
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.12.4"
},
"origin": "222.85.110.137, 222.85.110.137",
"url": "https://httpbin.org/get?key1=value1&key2=value2"
}
200
b'{\n "args": {\n "key1": "value1", \n "key2": "value2"\n }, \n "headers": {\n "Accept": "*/*", \n "Accept-Encoding": "gzip, deflate", \n "Host": "httpbin.org", \n "User-Agent": "python-requests/2.12.4"\n }, \n "origin": "222.85.110.137, 222.85.110.137", \n "url": "https://httpbin.org/get?key1=value1&key2=value2"\n}\n'
4、添加headers:利用headers参数
import request
hd = {'user-agent': 'Chrome/10'}
r = requests.get('http://httpbin.org/get',headers=hd)
print(r.text)
输出
{
"args": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Host": "httpbin.org",
"User-Agent": "Chrome/10"
},
"origin": "222.85.110.137, 222.85.110.137",
"url": "https://httpbin.org/get"
}
5、POST请求
import requests
payload = {'key1':'value1','key2':'value2'}
r = requests.post('http://httpbin.org/get',params=payload)
print(r.url)
输出
200
6、timeout:设定超时时间,秒为单位
可以在get或post请求中添加timeout参数; requests 在经过以 timeout 参数设定的秒数时间之后停止等待响应并会报错