request 是一个第三方库
requests.get(),返回一个消息实体,消息实体包括响应头、响应状态码、响应报文/正文(html、xml、json等)
1、get请求,不带参数
import requests
url='http://120.78.128.25:8765/Index/login.html'
res=requests.get(url,cookies=None) # 返回一个消息实体,cookies=None默认值
# 打印消息实体
print (res)
#响应头响应状态码响应报文正文
# 打印响应头
print("响应头:",res.headers)
# 打印响应状态码
print("响应状态码:",res.status_.code)
# 打印响应正文
print("响应正文:",res.text)
2、post请求,带参数
import requests
# post登录地址
url='http://119.23.241.154:8080/futureloan/mvc/api/member/login'
# 参数
data={"mobi1 ephone":"18688773467","pwd":"123456"}
# 返回一个消息实体
res=requests.post(url,data)
# 打印响应头
print("响应头:",res.headers)
# 打印响应状态码
print("响应状态码:",res.status_.code)
# 打印响应正文
# 1.html、xml、json ---》响应正文都可以使用text格式,但是json()格式只能是json使用,其他使用json()格式会报错
# 2.json格式推荐使用json(),方便取值
print("响应正文l:",res.text,type(res.text))
print("响应正文2:",res.json(),type(res.json()))
3、如何使用cookies
import requests
# post登录地址
url='http://119.23.241.154:8080/futureloan/mvc/api/member/login'
# 参数
data={"mobi1 ephone":"18688773467","pwd":"123456"}
# 返回一个消息实体
res=requests.post(url,data)
# 打印响应头
print("响应头:",res.headers)
# 打印响应状态码
print("响应状态码:",res.status_.code)
# 打印响应正文
# 1.html、xml、json ---》响应正文都可以使用text格式,但是json()格式只能是json使用,其他使用json()格式会报错
# 2.json格式推荐使用json(),方便取值
print("响应正文l:",res.text,type(res.text))
print("响应正文2:",res.json(),type(res.json()))
#充值
# 充值地址
recharge_url='http://119.23.241.154:8080/futureloan/mvc/api/member/recharge'
# 充值参数
recharge_data={"mobilephone":"18688773467","amount":"1000"}
# 如果不带cookies会提示没有登陆账号,所有发送请求时需要有cookies,调用登录后的cookies
recharge_res=requests.get (recharge_url,recharge_data,headers={},cookies=res.cookies)
print("充值结果:",recharge_res.json())
print("状态码:",recharge_res.status_code)
4、为什么需要伪装User-Agent?
通过“非法”手段方位,为了防止反爬虫机制可以修改user-sgent,但是不一定会成功
(1)伪装前:
import requests
url='https://openapiv5.ketangpai.com//UserApi/login'
data={"email":"18510336097","password":"116150ing"}
res=requests.post(url,data,verify=False)
print('代理uer-agent是:',res.request.headers)
(2)伪装后:
import requests
url='https://openapiv5.ketangpai.com//UserApi/login'
data={"email":"18510336097","password":"116150ing"}
# 定义一个新的变量值
header={'User-Agent':'Mozilla/5.0'}
# 将新的变量header赋值给headers
res=requests.post(url,data,headers=header,verify=False)
print('代理uer-agent是:',res.request.headers)