#python #api #csv
#python #API #csv
Вопрос:
import requests
import csv
url = "https://paneledgesandbox.//API/v3/surveys/id/import-responses"
with open('Cars.csv', 'r') as file:
payload = csv.reader(file)
print(payload)
headers = {
'X-API-TOKEN': 'zzzz',
'Content-Type': 'text/csv',
'Cookie': 'CPSessID=bb5b5cf55ceff2c2b8237810db3ca3a7; XSRF-TOKEN=XSRF_0wG1WMbV3G0ktBb'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)`
Я получаю сообщение об ошибке при попытке прочитать csv-файл в post-вызове с использованием python.
Я не уверен, в чем именно проблема, учитывая, что с помощью команды with файл автоматически закрывается.
Комментарии:
1. Что вы пытаетесь сделать?
Ответ №1:
В
payload = csv.reader(file)
на самом деле вы не читаете свой csv, а скорее возвращаете генератор, который исчерпывается после закрытия файла, когда вы выходите из области with
видимости.
Вместо этого вам нужно прочитать данные
payload = "n".join([", ".join(line) for line in csv.reader(file)])
Комментарии:
1. Но полезная нагрузка должна оставаться после закрытия файла, нет?
2. Считыватель не может получить доступ к файлу после его закрытия.