【发布时间】:2016-08-23 14:40:09
【问题描述】:
再一次,对于 python 来说相对较新,所以这对某些人来说似乎是不费吹灰之力。我提前道歉。
我想知道如何打开 .csv 文件并在后期会话中将内容作为数据发送。
有点像这样:
userData = json.loads(loginResponse.text)
sessionToken = userData["sessionId"]
print ('Login successful! Attempting to upload file...')
# Now try to upload file
uploadURL = 'url'
headers = {
'token': sessionToken
}
with open('data.csv', newline='') as csvFile:
csvReader = csv.reader(csvFile)
uploadResponse = loginAS.post(uploadURL, headers=headers, data='CONTENTS OF CSV FILE')
print (uploadResponse.status_code)
csvfile.close()
我尝试只打开 csv 文件,但没有成功。我试过了
data=list(csvReader)
但我收到“太多值无法解包”错误。那么,有什么想法吗?
我不确定这是否重要,但我使用的是 Python 3.4
【问题讨论】:
-
如果您只想将文件内容作为一大块文本传递,请不要使用 csv 模块。只需使用普通文件
read()方法即可。 -
只想发送原始数据?还是以特定格式?对于您的错误,请查看this
-
@JohnGordan,您能详细说明一下吗?如何使用 read() 方法?
-
uploadResponse = loginAS.post(..., data=csvFile.read()) -
@TryToSolveItSimple 老实说,我不知道我是否需要它作为特定格式。我正在尝试将文件上传到服务器,但是当我使用 files=files 选项时,我收到 500 错误。拦截 HTTP 调用,看起来它应该只是一大块文本......试图解决解包值(我已经阅读了你建议的帖子)似乎没有实际意义。所以我只是想尽我所能。我将从纯文本开始
标签: python python-3.x csv post