Gra*_*man 4 python csv twitter json mongodb
我从 twitter API 收集了一些推文并将其存储到 mongodb,我尝试将数据导出到 JSON 文件并且那里没有任何问题,直到我尝试制作一个 python 脚本来读取 JSON 并将其转换为 csv . 我的代码收到此回溯错误:
json.decoder.JSONDecodeError: Extra data: line 367 column 1 (char 9745)
Run Code Online (Sandbox Code Playgroud)
因此,在互联网上挖掘之后,我被指出要检查在线验证器中的实际 JSON 数据,我做到了。这给了我以下错误:
Multiple JSON root elements
Run Code Online (Sandbox Code Playgroud)
来自网站https://jsonformatter.curiousconcept.com/
或此处的数据链接
现在,问题是,我还没有在互联网上找到任何有关如何处理该错误的信息。我不确定这是我收集、导出的数据有问题,还是我不知道如何使用它。
我对这些推文的最终目的是制作一个网络图。我正在查看 Networkx 或 Gephi,这就是我想要获取 csv 文件的原因。
import json
with open('path_to_your_json_file', 'rb') as infile:
json_block = []
for line in infile:
json_block.append(line)
if line.startswith('}'):
json_dict = json.loads(''.join(json_block))
json_block = []
print json_dict
Run Code Online (Sandbox Code Playgroud)
如果您想使用 Pandas 将其转换为 CSV,您可以使用以下代码:
import json, pandas as pd
with open('path_to_your_json_file', 'rb') as infile:
json_block = []
dictlist=[]
for line in infile:
json_block.append(line)
if line.startswith('}'):
json_dict = json.loads(''.join(json_block))
dictlist.append(json_dict)
json_block = []
df = pd.DataFrame(jsonlist)
df.to_csv('out.csv',encoding='utf-8')
Run Code Online (Sandbox Code Playgroud)
如果你想扁平化 json 对象,你可以使用 pandas.io.json.json_normalize() 方法。
| 归档时间: |
|
| 查看次数: |
3694 次 |
| 最近记录: |