【发布时间】:2020-12-08 06:06:44
【问题描述】:
我可以获取一些数据并写入 CSV ,但数据放在一列中。我无法使用 columns = ["code", "img", "data"]) 作为标题。不确定这是否与我之前修复的索引问题有关(如果使用所有标量值,则值错误,您必须传递一个索引。)
所以我不知道索引的东西现在是否会导致写入正确 CSV 的问题,但我找不到任何信息。
基本上只想
- 把标题"code","img","data"
- 将每列中的每个数据分开,
- 使用分号;作为分隔符**
- 要调用多个 URL:
urllib.request.urlopen("https://barcode.monster/api/3061990141101", https://barcode.monster/api/3061990141101","https://barcode.monster/api/3061990141101")作为 url's
我的脚本:
import urllib.request, json, csv
import pandas as pd
with urllib.request.urlopen("https://barcode.monster/api/3061990141101") as url:
data = json.loads(url.read().decode())
# print(data)
with open('data.json', 'r') as f:
data = json.load(f)
df = pd.DataFrame(
{'test': data})
df.to_csv('test.csv', encoding='utf-8', index=False)
当我在记事本中打开 csv 时,总共有 9 行。:
test
EAN13
3061990141101
mini BN Chocolate flavour - 25 biscuits (5 paquets)
https://courses-en-ligne-now.com/.jpg
所以这意味着这个数组只有一列,而且都在一列中。我想要的只是 3 行(或更多)行:
code | img | data | (more later)
----------------------------------------------------------------------
EAN13 | 3061990141101 | mini BN Chocolate flavour - 25 biscuits (5 paquets) | https://courses-en-ligne-now.com/media/Photosite/3061990141101_PHOTOSITE_20180726_045123_0.jpg
...如果我在记事本中打开它,我只会看到 2 行,并且每个数据将用分号分隔。
任何帮助将不胜感激。
【问题讨论】:
-
请让您的预期输出更加明确。你只想要三列?实际数据有
class, code, company, description, image_url, size作为键。再次,请发布您希望数据看起来像表格的方式。作为旁注,我想知道你是否真的需要 Pandas 来做这件事。看来你可以在 python 中工作。
标签: python json python-3.x pandas dataframe