URL提供csv格式的数据。我试图获取数据并将其推送到数据库中。但是,我无法读取数据,因为它只打印文件的标题而不是完整的csv数据。可以有更好的选择吗?
#!/usr/bin/python3
import pandas as pd
data = pd.read_csv("some-url") //URL not provided due to security restrictions.
for row in data:
print(row)
答案 0 :(得分:3)
您可以遍历df.to_dict(orient="records")
:
data = pd.read_csv("some-url")
for row in data.to_dict(orient="records"):
# For each loop, `row` will be filled with a key:value dict where each
# key takes the value of the column name.
# Use this dict to create a record for your db insert, eg as raw SQL or
# to create an instance for an ORM like SQLAlchemy.
我做类似的事情来预先格式化SQLAlchemy插入数据,尽管我使用Pandas来合并来自多个源的数据,而不仅仅是读取文件。
旁注:如果没有Pandas,还有很多其他方法可以做到这一点,只需遍历文件的行。然而,Pandas对CSV的直观处理使其成为您所需要的有吸引力的捷径。