python的三种post请求

本文介绍了Python中进行POST请求的三种数据提交格式:1) 表单提交(application/x-www-form-urlencoded);2) JSON格式(application/json);3) 上传文件格式(multipart/form-data),并给出了相应的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/user/bin/env python

# -*-coding: utf-8 -*-i

mport requests

import json

#rep=requests.request("get",url="https://postman-echo.com/get?fool=barl&foo2=bar2")

par={"fool":"barl","foo2":"bar2"}

rep=requests.get(url="https://postman-echo.com/get",params=par)
print(rep.content)

rep1=requests.get("https://postman-echo.com/get?fool=barl&foo2=bar2")
print(rep1.content)

data={"fool":"barl","foo2":"bar2"}
rep4=requests.post("https://postman-echo.com/post",data=data)
print(rep4.text)

rep2=requests.request("post",url="https://postman-echo.com/post?fool=barl&foo2=bar2",data="this is data")
print(rep2.content)
print(type(rep2.content))
rep3=requests.post("https://postman-echo.com/post?fool=barl&foo2=bar2")


#取响应数据中值的方法
print(rep3.content)
print(rep3.text)
print(type(rep3.text))
print(rep3.status_code)
print(rep3.headers)
print(rep3.json())
print(rep3.encoding)

#正确代码是把data进行json编码,再发送。代码如下:

#r = requests.post(url=url,data=json.dumps(data),headers=headers) # 利用 json 对 字典序列化

post 请求中有三种数据提交格式

第一种是表单(application/x-www-form-urlencoded 以表单格式提交数据

data={"fool":"barl","foo2":"bar2"}

response=requests.post(url="https://postman-echo.com/post",data =data)

print(response.text)

data={"fool":"barl","foo2":"bar2"}

response=requests.post(url="https://postman-echo.com/post",data =data)

print(response.text)

第二种是json格式,-application/json

data={"fool":"barl","foo2":"bar2"}

response1=requests.post(url="https://postman-echo.com/post", json=data)

response2=requests.post(url="https://postman-echo.com/post", data=json.dumps(data))

data={"fool":"barl","foo2":"bar2"}

response1=requests.post(url="https://postman-echo.com/post", json=data)

response2=requests.post(url="https://postman-echo.com/post", data=json.dumps(data))

第三种是上传文件格式 -multipart/form-data

headers=""
files={"file":open("test_file.txt","rb")}
response3=requests.post("https://postman-echo.com/post",files=files,headers=headers)

print(response3.text)

headers=""

files={"file":open("test_file.txt","rb")}

response3=requests.post("https://postman-echo.com/post",files=files,headers=headers)

print(response3.text)

#备注: rb 代表以二进制读取数据 r 以人工书写读取数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值