文章目录
发送简单请求
requests.方法(URL)
方法 | 作用 |
---|---|
get() | 发送GET请求 |
put() | 发送PUT请求 |
delete() | 发送DELETE请求 |
head() | 发送HEAD请求 |
options() | 发送OPTIONS请求 |
import requests
r = requests.get("https://xxx.com")
r = requests.put(‘http://xxx.com’, data = {‘key’:‘value’})
r = requests.delete('http://xxx.com")
r = requests.head('http://xxx.com")
r = requests.options('http://xxx.com")
获取响应状态码(关键词:status_code)
response.status_code
import requests
# 发送请求
r = requests.get("https://www.baidu.com")
print(r.status_code)
判断是否响应成功(关键字:assert)
assert response.status_code == 200
若断言失败则报错
检测响应状态码(关键词:codes)
r.status_code == requests.codes.状态码
r.status_code == requests.codes.OK
传递参数(参数:params)
requests中通过字典可以很方便的将参数添加进URL中
requests.get(url,params=kw)
kw = {"key1":"value1","key2":"value2","key3":["value3","value4"]}
url = "https://xxx.com"
# 最终URL:https://xxx.com?key1=value1&key2=value2&key3=value3&key3=value4
传递请求头(参数:headers)
requests.get(url,headers=headers)
import requests
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:75.0) Gecko/20100101 Firefox/75.0"}
r = requests.get("https://xxx.com", headers=headers)
注意事项
- 请求头应为字典格式
- header 值必须是 string、bytestring 或者 unicode。
传递数据(参数:data)
requests.post(url, data=data)
data = {'key1': 'value1', 'key2': 'value2'}
r = requests.post(url, data=data)
注意事项
可以传递字典或者元祖列表
传递多部分编码文件(参数:files)
requests.post(url, files=files)
# files = {'file': open('文件', '方式')}
r = requests.post(url, files=files)
使用代理IP(关键字:proxies)
requests.get(url, proxies=proxies)
proxies = "代理IP"
response = requests.get("https://xxx.com", proxies=proxies)
常用请求方法
GET
requests.get(url, headers=headers, params=kw, proxies=proxies)
POST
requests.post(url, data = data,headers=headers,proxies=proxies)
files也可以加进去