【发布时间】:2021-03-07 21:10:26
【问题描述】:
好的,我已经尝试了本网站和其他网站上其他人推荐的几种解决方案。但是,我无法让它像我希望的那样工作。
我得到一个 XML 响应,我对其进行规范化,然后保存到 CSV。第一部分工作正常。 我不想将其保存为 CSV,而是将其保存到访问数据库中的现有表中。下面的第二部分:
- 希望使用现有表而不是创建新表
- 结果没有用“;”分隔到不同的列。一切都在同一列中,没有分开,见下图
response = requests.get(u,headers=h).json()
dp = pd.json_normalize(response,'Units')
response_list.append(dp)
export = pd.concat(response_list)
export.to_csv(r'C:\Users\username\Documents\Python Scripts\Test\Test2_'+str(now)+'.csv', index=False, sep=';',encoding='utf-8')
access_path = r"C:\Users\username\Documents\Python Scripts\Test\Test_db.accdb"
conn = pyodbc.connect("DRIVER={{Microsoft Access Driver (*.mdb, *.accdb)}};DBQ={};" \
.format(access_path))
strSQL = "SELECT * INTO projects2 FROM [text;HDR=Yes;FMT=sep(;);" + \
"Database=C:\\Users\\username\\Documents\\Python Scripts\\Test].Testdata.csv;"
cur = conn.cursor()
cur.execute(strSQL)
conn.commit()
conn.close()
【问题讨论】:
-
抱歉格式化,我只能格式化一部分代码,但它禁止我发布问题。所以现在它被“格式化”了,但看起来很糟糕,很抱歉
-
感谢 flakes 的编辑使它看起来很漂亮!
-
您可以使用sqlalchemy-access 将DataFrame 推送到使用
df.to_sql(… , if_exists="append")的Access 表,而不是将DataFrame 转储到CSV。 -
Gord,你能帮我写一下代码吗?
标签: python json pandas csv ms-access