使用正则表达式和json.loads,将JSON文件中的数据转化为pandas.DataFrame
说在前面
在使用Scrapy框架(爬虫框架)爬取网页信息时,会定义一个ITEMS,然后通过PIPLINE将数据写入到JSON文件中,如果是按行写入,则最后得到的数据就不是一个标准JSON格式的数据,在进行数据分析时,就会比较艰难。所以本文旨在用两种方法解决这个问题。
方法说明
本文分别使用Python中的re[正则表达式]模块和json模块来扩展的两种方式。
- 正则表达式方法:
原理
首先,先将JSON文件中的内容读出来,然后用正则表达式将文本中为null的数据进行替换。然后取出相应标签的对应的值,再将对应的值封装为Series,最后在构造成一个DataFrame数据。
详细代码
#coding='utf-8
import pandas as pd
import re
class DataAnalysis(object):
def __init__(self):
# self.data_str = open("boss_fp.json",encoding='utf-8').read()
# self.data_str = open("boos_dat.json",encoding='utf-8').read()
self.data