【发布时间】:2018-01-16 14:37:02
【问题描述】:
我想学习如何从 URL 获取 CSV 文件。
虽然我可以通过硬编码 CSV 字符串变量的名称来使下面的代码工作,但我想学习如何遍历许多 CSV 字符串。
import csv
import requests
CSV_URL_1 = 'https://raw.githubusercontent.com/fivethirtyeight/data/master/births/US_births_1994-2003_CDC_NCHS.csv'
CSV_URL_2 = 'https://raw.githubusercontent.com/fivethirtyeight/data/master/births/US_births_2000-2014_SSA.csv'
csv_list = []
for i in range(1,3):
concat = "CSV_URL_" + str(i)
csv_list.append(concat)
with requests.Session() as s:
csv_list_dict = {}
for i in csv_list:
download = s.get(i) #This part is the problem
decoded_content = download.content.decode('utf-8')
cr= csv.reader(decoded_content.splitlines(), delimiter=',')
my_list = list(cr)
csv_list_dict[i]=my_list
csv_list_dict
如果不清楚,我希望 download = s.get(i) 中的“i”在第一次迭代时变为“CSV_URL_1”,在第二次迭代时变为“CSV_URL_2”(我可以复制代码两次和硬代码这些值以获得正确的结果),但我不知道如何使这个迭代工作。相反,我收到了缺少架构错误。
我做错了什么?
【问题讨论】: