我正在尝试将某些数据从网页导入数据框。
数据:以下格式的文本块
[{"ID":0,"Name":"John","Location":"Chicago","Created":"2017-04-23"}, ... ]
我成功向服务器发出请求,可以以文本形式返回数据,但似乎无法将其转换为DataFrame。
E.g
r = requests.get(url)
people = r.text
print(people)
因此,从这一点来看,我对如何将此文本构造为DataFrame感到困惑。大多数在线教程似乎都演示了导入csv,excel或html等。
答案 0 :(得分:1)
如果people
是字符串格式的dict列表,则可以使用json.loads
将其转换为dict列表,然后轻松创建DataFrame
>>> import json
>>> import pandas as pd
>>> people='[{"ID":0,"Name":"John","Location":"Chicago","Created":"2017-04-23"}]'
>>> json.loads(people)
[{'ID': 0, 'Name': 'John', 'Location': 'Chicago', 'Created': '2017-04-23'}]
>>>
>>> data=json.loads(people)
>>> pd.DataFrame(data)
Created ID Location Name
0 2017-04-23 0 Chicago John