由于Neo4j导出csv后的json格式不完整,固需要清洗。
PYTHON
清洗代码
import json;
import pandas as pd
import re
#此为刚导出的neo4j csv中的数据的json格式转换及清洗
#图数据库
rs=pd.read_csv('F:\dada\知识图谱\包图谱数据\关联库的构建\export (1) - t1.csv',encoding='utf-8')
p=rs['p']
v=rs['v']
p1=rs['p1']
for r in p:
# print(r)
r=r.replace("\\","").replace("\n","")#替换脏数据,干扰字符串的转义字符。去空格,避免json无法按行识别
#给默认csv无json格式的转换为json字符串格式
r=r.replace("\":","\":\"")#前
r=r.replace(",\"","\",\"")#后
r=r.replace("}","\"}")#末尾格式
#去掉爬取错误的问题,描述极长的代码数据(大于300),并设置为longDescription
#--------------------此行代码仅仅是在存在描述的时候才做的清洗
if('description\"' in r):
re_pattern='description":".*?","'
description=re.search(re_pattern,r).group()
if(len(description)>300):
sub_pattern='description":".*?","'
r=re.sub(sub_pattern,'description":"longDescription","',r)
#------------------------
print(r)
json.loads(r)
print("-----------==============")
清洗后