如何通过Python发送CSV到Postman请求?

xnifntxz  于 2022-11-07  发布在  Postman
关注(0)|答案(2)|浏览(232)

我尝试通过Python和requests库向Postman发送一个Post请求。当我通过Postman的GUI手动发送请求时,该文件可以正常工作。这是我所拥有的:

csv_ = df.to_csv()
url = 'url.com'
headers = {'Authorization': 'my password'}
data = {'file': csv_, 'template_id':3, 'entity':'product', 'simulation':0}
r = requests.post(url, headers=headers, files=data)

我也试过这个:

url = 'url.com'
headers = {'Authorization': 'my password'}
data = {'file': open('file.csv', 'rb'), 'template_id':3, 'entity':'product', 'simulation':0}
r = requests.post(url, headers=headers, files=data)

但两种情况下我都会得到这个错误:422 {"success":false,"error":{"code":"invalid_export_request","message":["The entity must be a string."]}}。我已经尝试了将数据中的整型转换为字符串并排除它们,但我仍然得到错误。为什么会发生这种情况?

ilmyapht

ilmyapht1#

我可以这样发送文件:

data = {'file': (file_name, open(file_path, 'rb').read(), 'form-data') }

但可能会在服务器端的特定实现上深化。

5cg8jx4n

5cg8jx4n2#

〈/〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈I〉〈

url = 'url.com'
payload={'template_id': '3',
    'entity': 'product',
    'simulation': '0'}
    files=[
      ('file',('Main Product Template.csv',open(filename,'rb'),'text/csv'))
    ]
    headers = {
      'scope': 'english',
      'Authorization': 'my password',
      'Cookie': 'keysmash'
        }
    r = requests.request("POST", url, headers=headers, data=payload, files=files)
    return (r, r.text)

相关问题