【发布时间】:2018-03-16 13:38:43
【问题描述】:
我正在尝试使用
从 Dropbox 中读取 csv 文件md, res = dbx.files_download(路径)
在此link 中推荐
这是我正在尝试阅读的 csv:csv_file_image
来自res.content,我从 csv 文件中获取数据,该文件形状丑陋。
有什么方法可以读取更多形状的数据,例如使用:
import csv
with open(file) as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
print(row['name'])
我想将 csv 文件作为字典读取,但我得到的只是数据:response_data_image
【问题讨论】:
-
文档说“csvfile 可以是任何支持迭代器协议的对象”,因此将 Dropbox 内容转换为它支持的内容应该很容易吗?当您说“我得到的只是原始数据”时,您的意思是从哪里来的?
-
我不应该使用原始数据这个词。当我尝试使用 csv.DictReader 读取“res.content”时,出现导入错误,也出现“FileNotFoundError”并打印 res.content 中的数据。
-
@Rup 我已经编辑了问题并添加了屏幕截图。
-
哦 - 你不想成为
open()ing res.content 因为那不是磁盘上的文件。 (或者,如果您只需要快速修复,您可以将其写入文件并打开它。)但最好的方法是将其转换为您可以传递到csv.DictReader的格式,而无需先尝试open()。如果它是单个字符串,那么这可能就像通过换行符拆分它一样简单,但我不确定(它是什么或如何最好地处理它。) -
感谢您的帮助。它引导我找到解决方案。
标签: python-3.x csv dictionary dropbox-api