python request post
时间: 2025-05-09 10:11:29 浏览: 32
### 使用 Python Requests 库发送 POST 请求
在 Python 中,`requests` 是一个功能强大的 HTTP 客户端库,可以轻松实现向服务器发送各种类型的请求。对于 `POST` 请求而言,它通常用于提交数据到指定 URL 的资源上。
以下是关于如何使用 `requests.post()` 方法的具体说明以及代码示例:
#### 发送基本 POST 请求
当需要通过 `POST` 请求将数据传递给目标服务器时,可以通过设置参数字典来完成这一操作。以下是一个简单的例子[^2]:
```python
import requests
def send_post_request():
url = "https://httpbin.org/post"
payload = {"key": "value", "name": "John Doe"} # 要发送的数据
response = requests.post(url, data=payload)
print("最终请求URL:%s" % response.url)
print("响应状态码:%s" % response.status_code)
print("响应头部:%s" % response.headers)
print("返回的内容:%s" % response.text)
send_post_request()
```
上述脚本定义了一个函数 `send_post_request()`, 并利用 `requests.post()` 向测试站点 https://httpbin.org 提交了一组键值对作为表单数据。
#### 设置自定义 Headers 和 JSON 数据
有时可能还需要附带特定的 headers 或者以 JSON 格式传输更复杂结构化的信息。下面展示的是带有额外 header 字段和 JSON body 的情况:
```python
import requests
import json
def post_with_headers_and_json():
url = 'https://api.example.com/resource'
headers = {'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_ACCESS_TOKEN'}
data = {
"username": "test_user",
"password": "secure_password!"
}
response = requests.post(url=url, headers=headers, json=data)
try:
parsed_response = response.json()
print(json.dumps(parsed_response, indent=4))
except ValueError:
print('Invalid JSON received.')
post_with_headers_and_json()
```
此片段展示了怎样构建包含认证 token 及其他元数据在内的请求头,并且把实际负载转换成标准 JSON 形式的技巧[^1]。
#### 存储或处理接收到的信息
一旦成功执行了某个网络调用之后,就可以依据业务需求保存所得的结果或者进一步解析它们。比如写入文件系统中的 CSV 文件以便后续分析;又或者是导入关系型数据库管理系统 (RDBMS),像 MySQL/PostgreSQL 这样的平台当中去长期保留下来[^3]:
```python
import csv
import requests
response_data = [
['Name', 'Age'],
['Alice', 30],
['Bob', 25]
]
with open('output.csv', mode='w') as file:
writer = csv.writer(file)
writer.writerows(response_data)
print("Data has been written into output.csv.")
```
以上实例演示了简单地创建一份逗号分隔符表格文档的过程。
---
阅读全文
相关推荐



















