python使用requests上传多文件

import random
import requests
from requests_toolbelt.multipart.encoder import MultipartEncoder
file_key = "xxx"
file_crt = "xxx"
url = "http://xxx"
# 方法一, 使用MultipartEncoder方法
def test_upload():
    multipart_encoder = MultipartEncoder(
        fields={
            'name': "aaa",  # 请求参数
            'private_key_file': ('local.ifeilian.cn.key', open(file_key, 'rb'), 'application/x-x509-ca-cert'),  # 文件数据
            'cert_file': ('local.ifeilian.cn.crt', open(file_crt, 'rb'), 'application/x-iwork-keynote-sffkey')  # 文件数据
        },
        boundary='-----------------------------' + str(random.randint(1e28, 1e29 - 1))  # 分隔表单
    )
    headers["Content-Type"] = multipart_encoder.content_type  # 设置 boundary
    res = requests.post(url=url, data=multipart_encoder, headers=headers)
    print(res.json())

# 方法二 表单数据和文件数据分别发送
def test_upload():
    data = { # 表单数据
        'key1': 'testcert',
        'key2': 'testcert',
    }
    files = { # 文件数据
        'cert_file': ("filename_xxx1", "file_binary_data1", "application/x-x509-ca-cert"),
        'private_key_file': ("filename_xxx2", "file_binary_data2", "application/x-iwork-keynote-sffkey"),
    }
    res = requests.post(url=url, files=files, data=data, headers=headers)
    print(res.json())

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 答案:下面是一段python form表单提交脚本:import requestsurl = 'http://www.example.com/form-endpoint'mydata = {'name': 'John Smith', 'email': 'john@example.com'}x = requests.post(url, data = mydata)print(x.text) ### 回答2: 当您需要一段Python的表单提交脚本时,您可以使用Pythonrequests库来处理HTTP请求。以下是一个简单的示例代码: ```python import requests url = 'http://example.com/submit' data = {'name': 'John', 'age': 25, 'email': 'john@example.com'} response = requests.post(url, data=data) if response.status_code == 200: print('表单提交成功!') else: print('表单提交失败!') ``` 在这个示例中,我们首先导入了requests库。然后,我们定义了要提交表单的URL,并创建了一个包含表单数据的字典。在这个例子中,我们假设表单包含名字、年龄和电子邮件字段。 接下来,我们使用requests库的post方法向指定的URL发送POST请求,并将表单数据作为参数传递。最后,我们检查响应的状态码来判断表单提交是否成功。 请注意,这只是一个简单的示例,您可能需要根据实际情况进行相应的调整。例如,如果表单包含文件上传或需要进行身份验证,您可能需要使用requests库的其他功能来满足您的需求。 希望这段代码对您有所帮助! ### 回答3: 当我需要一段Python的form表单提交脚本时,我可以使用Pythonrequests库来实现。首先,我需要导入requests库: import requests 然后,我可以定义一个函数,该函数将通过POST请求将表单数据提交到目标网址。 def submit_form(url, data): response = requests.post(url, data=data) if response.status_code == 200: print("表单提交成功!") else: print("表单提交失败!") 在这里,url参数表示目标网址,data参数表示要提交的表单数据,它应该是一个字典类型。然后,我可以使用该函数来提交表单。 url = "http://example.com/submit" # 假设目标网址为http://example.com/submit data = { "name": "张三", "age": 20, "email": "zhangsan@example.com" # 其他表单字段及其值 } submit_form(url, data) 在这个例子中,我将name字段设置为"张三",age字段设置为20,email字段设置为"zhangsan@example.com"。你可以根据具体的表单要求来修改这些字段和值。 最后,根据服务器的响应状态码,我们可以判断表单是否成功提交。如果状态码为200,表示提交成功;否则,表示提交失败。 这就是我使用Python实现的一个简单的form表单提交脚本。根据实际需求,你可以根据需要修改脚本中的url和data参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值