关于网友提出的“如何用python requests post一段字符串”问题疑问,本网通过在网上对“如何用python requests post一段字符串”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题:如何用python requests post一段字符串描述:
我要post一段数据,正确的浏览器post数据如下
POST /boss/gridturnpage?action=refresh&pk=-1&c HTTP/1.1
Accept: */*
Content-Type: multipart/form-data
Referer: http://10.81.0.3:8080/boss/boss/so/soinfomgr/QryOrdSoRecord.jsp
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; InfoPath.3; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729)
Host: 10.81.0.3:8080
Content-Length: 1255
DNT: 1
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: USERINFO_ATTR=AppframeSerial_12959; CRM_WEB=MJmjV0yh1nzRTVJNTnT1ZTF3mjpLTwGLnkL9wxzy1Fjkk6p5GKGP!-257094400
下面是我的代码,boss.txt内容就是
headers2={"Content-Type":"multipart/form-data",
"Referer":"http://10.81.0.3:8080/boss/boss/so/soinfomgr/QryOrdSoRecord.jsp",
"Accept-Language":"zh-cn",
"Accept-Encoding":"gzip, deflate",
"DNT":"1"}
s.headers.update(headers2)
files = {'':('',open(r'f:\boss.txt', 'rb'))}
files== urllib.parse.urlencode(files).encode(encoding="gbk")
r=s.post(url='http://10.81.0.3:8080/boss/gridturnpage?action=refresh&pk=-1&c
下面我post的抓包,怎样才能将数据正确的post上去?
解决方案1:
你是按照文件(multipart)的方式post上去对的,如果想把文件内容直接放在post的body里面,那么读一份文件的内容,然后放在data参数里面就行了