import requests
HOST = "xxx"
# 使用fiddler抓包
fiddler_proxy = {
"http": "http://127.0.0.1:8888",
"https": "http://127.0.0.1:8888"
}
# 1.请求url
login_url = f"{HOST}/xxx/xxx/"
# 2.请求头
headers = {
"Content-Type": "application/x-www-form-urlencoded"
}
# 3.请求体
# "Content-Type": "application/x-www-form-urlencoded"
# 请求体2种方式:一个是字典类型,一个是key1=value1&key2=value2类型的字符串
# 方式一:
# payload = {
# "username": "xxx",
# "password": "xxx"
# }
# 方式二:
payload = "username=xxx&password=xxx"
# 4.发送请求
# data:默认请求体类型是:application/x-www-form-urlencoded
# json:默认请求体类型是:application/json
# 返回值是Response实例
response = requests.post(login_url, data=payload, headers=headers, proxies=fiddler_proxy)
print(type(response))
# 5.打印请求体
request_body = response.request.body
print(request_body)
# 6.打印请求头
request_headers = response.request.headers
print(request_headers)
# 7.打印响应头
response_headers = response.headers
print(request_headers)
# 8.打印响应体(字符串类型,获取html页面时使用)
response_body_text = response.text
print(type(response_body_text), response_body_text)
# 9.打印响应体(json(),返回一个字典)
# 此方法只适用于响应体类型是:json格式的
response_body_json = response.json()
print(type(response_body_json), response_body_json)
# 10.打印响应体(content:返回字节类型,下载图片或者文件时使用)
response_body_content = response.content
print(type(response_body_content), response_body_content)
request常用请求方法对应的常用参数名称
参数 |
get |
post |
put |
delete |
---|---|---|---|---|
url |
有 |
有 |
有 |
有 |
data |
否 |
有 |
有 |
有 |
json |
否 |
有 |
否 |
否 |
headers |
有 |
有 |
有 |
有 |
cookies |
有 |
有 |
有 |
有 |
params |
有 |
否 |
否 |
否 |