将unicode对象读取为字符串

时间:2018-04-21 12:31:56

标签: python json unicode beautifulsoup

我有一个使用beautifulsoup从网站抓取的Excel工作表并打印出unicode对象结果,因为它是csv像

  

{u' rgb':你' 190,190,190',你'键入':你' INTERIOR',你' name':你好兰花,优质皮革'},{u' rgb&#39 ;: u' 60,79,77',你'键入':你' EXTERIOR& #39;,你'姓名':你' Nord Grey Metallic'}

但现在我无法使用pandas作为字典来阅读它们,因为它返回单个字符串,如' {'," u"。

我尝试编码字符串但没有结果。 我想阅读字典。

2 个答案:

答案 0 :(得分:0)

您无法将"[""]"个字符附加到字符串中。然后使用eval()将其转换为dicts列表:

f = open("data.csv", "r")
data_string = "[" + f.read() + "]"
data_list = eval(data_string)

for data in data_list:
    print(data)

答案 1 :(得分:0)

使用ast模块中的{{3}}功能。

<强>实施例

import pandas as pd
import ast
d = "{u'rgb': u'190,190,190', u'type': u'INTERIOR', u'name': u'Orchid, premium leather'}, {u'rgb': u'60,79,77', u'type': u'EXTERIOR', u'name': u'Nord Gray Metallic'}"
d = list(ast.literal_eval(d))
df = pd.DataFrame.from_dict(d)
print(df)

<强>输出:

                      name          rgb      type
0  Orchid, premium leather  190,190,190  INTERIOR
1       Nord Gray Metallic     60,79,77  EXTERIOR