一、Post请求中body的4种数据类型:
1、application/json 如:{"input1":"xxx","input2":"xxx"}
2、application/x-www-form-urlencoded 如:input1=xxx&input2=ooo&
3、
4、
二、post请求有时body传data数据有时传json参数
r=s.post(url,headers=headers,data=d) //这种application/x-www-form-urlencoded格式的一般用data传参
r=s.post(url,headers=headers,json=d) //这种application/json格式的一般用json传参
三、python编写post请求的脚本:
1、
import requests
import re
url="http://localhost:8080/jenkins/j_acegi_security_check"
headers={
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"
}
d={
"from":"",
"j_username":"navy_lu",
"j_password":"JIYU123456",
"json":{"j_username": "navy_lu", "j_password": "JIYU123456", "remember_me": True, "from": "", "Jenkins-Crumb": "470c24802a0fa0192e9f519af4f5a1d7"},
"Submit":u"登陆",
"remember_me":"on"
}
s=requests.session() # 创建一个session对象
r=s.post(url,headers=headers,data=d)
print(r.content)
t=re.findall(r'<b>(.+?)</b>',r.content)
print(t[0])
print(t[1])
2、
import requests
import json
#help(requests)
payload = {"yoyo":"hello world",
"pythonQQ群":"226296743"}
data_json=json.dumps(payload)
r = requests.post('http://httpbin.org/post', data=payload,verify=False)
#s=requests.post('http://httpbin.org/post',json=data_json,verify=False)
print(r.status_code)
print(r.text)
#print(s.json)
四、python编写get请求:
import requests
#r=requests.get("http://www.cnblogs.com/yoyoketang")
par={"keywords":"yoyoketang"}
s=requests.get("http://zzk.cnblogs.com/s/blogpost",params=par,verify=False)
b=requests.get("https://www.baidu.com/",verify=False)
print(b.url) #获取URL
print(b.status_code) #响应状态码
print(b.encoding) #编码格式
print(b.headers) #以map方式存响应头
print(b.cookies) #获取cookies
print(b.content) #字节方式的响应体,会自动解码
print(b.json) #json解码器
print(b.raw) #返回原始响应体
###
#print(r.status_code)
print(s.status_code)
#print(r.text)
print(s.text) #字符串方式的响应体
#print(s.raise_for_status()) #请示失败抛出异常
扫描二维码关注公众号,回复:
2134666 查看本文章