requests python中完成http请求get post
requests 第三方库
一个http request(http请求)指从客户端到服务端的请求消息,包括了以下信息:
请求地址uri
请求方法:get post
http协议/版本
请求头
请求正文
一、简单使用
import requests
login_url ="https://www.xxx.wang:xxx/loginUse"
login_data ={"username":"xxx","password":"xxx"}
res=requests.post(login_url,login_data)##返回消息实体 消息实体包括响应头 响应状态码 响应正文print("响应头:",res.headers)print("响应状态码:",res.status_code)print("响应正文:",res.text)# 响应正文有html xml json 目前正文内容为html# html xml json ---->text# html xml ------>用json()会报错 只有json类型的返回值才支持jsonprint("**cookies**:",res.cookies)print("cookies的内容:",res.cookies["luyao"])
二、request封装
import requests
classHttpRequest:'''利用requests封装get请求和post请求'''''''
method:请求方式
url:请求地址 http://xxxx:port
param:传递的参数 非必填参数 字典的格式传递参数
'''defhttp_request(self,method,url,data,cookies=None):if method.lower()=="get":# get请求# verify设置为False,Requests也能忽略对SSL证书的验证 verify=False
res = requests.get(url, data, cookies=cookies)#响应结果的消息实体elif method.lower()=="post":# verify设置为False,Requests也能忽略对SSL证书的验证 verify=False
res=requests.post(url,data,cookies=cookies)#响应结果的消息实体return res
if __name__ =='__main__':
url ="https://www.xxx.wang:xxx/loginUse"
data ={"username":"xxx","password":"xxx"}
res=HttpRequest().http_request("post",url,data)print("登录问题反馈:",res.text)
que_url ="https://www.xxx.wang:xxx/index"
que_data={"username":"xxx","password":"xxx"}
que_res=HttpRequest().http_request("get",que_url,que_data,res.cookies)print("问题反馈首页:",que_res.text)