py:requests.post表单、json、上传文件

1. post form表单提交

import requests,json

# post form请求  "Content-Type":"application/x-www-form-urlencoded"
url= 'http://httpbin.org/post'
data={'key1': 'value1','key2': 'value2'}
res=requests.post(url,data=data)
print(res.text)


#================结果===============
{
  "args": {}, 
  "data": "", 
  "files": {}, 
  "form": {
    "key1": "value1", 
    "key2": "value2"
  }, 
  "headers": {
    "Accept": "*/*", 
    "Accept-Encoding": "gzip, deflate", 
    "Content-Length": "23", 
    "Content-Type": "application/x-www-form-urlencoded", 
    "Host": "httpbin.org", 
    "User-Agent": "python-requests/2.22.0", 
    "X-Amzn-Trace-Id": "Root=1-60ae41c2-2f1133134d48dc9a6fe83481"
  }, 
  "json": null, 
  "origin": "123.156.31.154", 
  "url": "http://httpbin.org/post"
}

2. post json数据 2种提交请求写法

# post json请求
# url = "http://jinbao.pinduoduo.com/network/api/common/goodsList"
url= 'http://httpbin.org/post'
data ={"pageSize":60,"pageNumber":1,"withCoupon":0,"sortType":0}
headers = {
'Content-Type':'application/json; charset=UTF-8',
'Host':'jinbao.pinduoduo.com',
'Origin':'http://jinbao.pinduoduo.com',
'Referer':'http://jinbao.pinduoduo.com/',
'User-Agent':'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/66.0.3359.181 Mobile Safari/537.36',
'Accept': 'application/json,text/javascript,*/*; q=0.01',}


# post json请求写法1
res=requests.post(url,data=json.dumps(data),headers=headers)
print(res.text)

#post json 请求写法2
res=requests.post(url,json=data,headers=headers) 
print(res.text)


==========结果==============
{
  "args": {}, 
  "data": "{\"pageSize\": 60, \"pageNumber\": 1, \"withCoupon\": 0, \"sortType\": 0}", 
  "files": {}, 
  "form": {}, 
  "headers": {
    "Accept": "application/json,text/javascript,*/*; q=0.01", 
    "Accept-Encoding": "gzip, deflate", 
    "Content-Length": "65", 
    "Content-Type": "application/json; charset=UTF-8", 
    "Host": "jinbao.pinduoduo.com", 
    "Origin": "http://jinbao.pinduoduo.com", 
    "Referer": "http://jinbao.pinduoduo.com/", 
    "User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/66.0.3359.181 Mobile Safari/537.36", 
    "X-Amzn-Trace-Id": "Root=1-60ae41c3-3613dde474bb87f6497b4792"
  }, 
  "json": {
    "pageNumber": 1, 
    "pageSize": 60, 
    "sortType": 0, 
    "withCoupon": 0
  }, 
  "origin": "123.156.31.154", 
  "url": "http://jinbao.pinduoduo.com/post"
}

3. post上传文件写法

#上传文件post
url = 'http://httpbin.org/post'
files = {'file': open('./useLsess/sssssssss.txt','rb')}
r = requests.post(url,files=files)
print(r.text)



#=====结果===============
{
  "args": {}, 
  "data": "", 
  "files": {
    "file": "sssssssss"
  }, 
  "form": {}, 
  "headers": {
    "Accept": "*/*", 
    "Accept-Encoding": "gzip, deflate", 
    "Content-Length": "158", 
    "Content-Type": "multipart/form-data; boundary=8e5ba7236168b941f787de746ecc4f41", 
    "Host": "httpbin.org", 
    "User-Agent": "python-requests/2.22.0", 
    "X-Amzn-Trace-Id": "Root=1-60ae41c4-56c243073c60f0d703ede97d"
  }, 
  "json": null, 
  "origin": "123.156.31.154", 
  "url": "http://httpbin.org/post"
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值