当前位置: 首页 > 知识库问答 >
问题:

python上载带有https post的字符串[重复]

虞高雅
2023-03-14

我们想用Python上传一个字符串。我在这里找到了一些示例并创建了以下脚本

import requests
url = 'https://URL/fileupload?FileName=file.csv'
headers = {'content-type': 'octet-stream'}
files = {'file': ('ID,Name\n1,test')}
r = requests.post(url, files=files, headers=headers, auth=('user', 'password'))
--ec7b507f800f48ab85b7b36ef40cfc44
Content-Disposition: form-data; name="file"; filename="file"

ID,Name
1,test
--ec7b507f800f48ab85b7b36ef40cfc44--

目标是仅从文件={'file':('id,name\N1,test')}中上载以下内容:

ID,Name
1,test

这怎么可能?

共有1个答案

欧旻
2023-03-14

使用files参数时,requests会创建张贴文件所需的头和正文。
如果您不希望请求的格式与此相同,可以使用data参数。

url = 'http://httpbin.org/anything'
headers = {'content-type': 'application/octet-stream'}
files = {'file': 'ID,Name\n1,test'}
r = requests.post(url, data=files, headers=headers, auth=('user', 'password'))
print(r.request.body)
file=ID%2CName%0A1%2Ctest

请注意,当将字典传递给data时,它得到了URL编码。如果您想在不进行任何编码的情况下提交数据,可以使用字符串。

url = 'http://httpbin.org/anything'
headers = {'content-type': 'application/octet-stream'}
files = 'ID,Name\n1,test'
r = requests.post(url, data=files, headers=headers, auth=('user', 'password'))
print(r.request.body)
ID,Name
1,test
 类似资料:
  • 本文向大家介绍Python 处理带有 \u 的字符串操作,包括了Python 处理带有 \u 的字符串操作的使用技巧和注意事项,需要的朋友参考一下 最近遇到一个头疼的问题,用socket接收到一个字符串 格式如下: {“trade_status”: {“desc”: “\u30106\u3011 - \u8d22\u52a1\u7ed3\u7b97\u5df2\u5b8c\u6210 “}}/en

  • 问题内容: 我试图理解字符串比较与字符串比较的输出。需要明确的是,我拥有使用==和equals比较两个字符串的类。我试图将==和equals()的输出合并为字符串。equals()的输出会连续显示,但==的输出不会 连续显示。使用Java的装箱功能,将与字符串连接的布尔值联系起来。equals和==都返回布尔值。那么为什么会有这种差异呢?有人可以解释吗? 输出 更新:答案 如果不使用s1 == s

  • 我正在创建一个跟踪员工的程序。我有一个ArrayList跟踪当前的员工。由于ArrayLists在程序重新启动后不会被保留,我需要找到一种方法来保留员工列表。我决定创建一个包含所有员工列表的文件,然后每次程序运行时,它都会将该文件导入到ArrayList中。我创建了一个save方法和一个addEmployee方法,这就是我目前所拥有的: 创建新员工的代码(不是addEmployee方法): 保存方

  • 问题内容: 我有这个: JSONLint表示这是完全有效的json。但是执行时出现错误。 但是,如果我将代码更改为: (请注意双反斜杠) 它可以工作,但是现在JSONLint表示。 有人可以帮助您了解这种行为吗? 问题答案: 有线格式和您必须在代码中编写的格式之间是有区别的。当您在代码中声明此代码时,您需要在文字中使用双-\,以便字符串获得一个反斜杠(否则,它将\\解释为一个转义序列,仅声明一个“

  • 具有以下json片段: 这是我的对象映射器配置 附加注意:Pojo类是使用jsonschema2pojo gradle插件生成的,并且基于json模式

  • 我想用一个字符串str,把它打印到一个新的行中。重复一遍 示例:return str.repeat(number) 输出:这是要重复的字符串这是要重复的字符串这是要重复的字符串这是要重复的字符串这是要重复的字符串