import os
import ast
import json
import time
import glob
# :)
class choice_Json:
def __init__(self):
pass
@staticmethod
def choice(good_list, bad_list,startdate,enddate):
result_dict = {
'name': "", # 文件名称
'doc_name': "", # 文件名称+案件信息
'doc_path': "", # 文件所在地址
'content': "" # 文件部分详情
}
startdate=""
enddate=""
f_name = []
f_doc_path = []
f_doc_name = []
f_content = []
file_path = 'D:\PyCharm\FileSpace\法拍\quanbu_json' # 所有json文件的位置
if len(good_list) == 0:
good_list = ["。",",","日","号","的"]
elif len(bad_list) == 0:
bad_list = ["1234567890qwertyuiop"]
startdate = startdate.replace('-','')
enddate = enddate.replace('-', '')
for filename in os.listdir(file_path):
try:
if filename.endswith(".json"): # 只处理json文件
file_path_1 = file_path + '/' + filename
with open(file_path_1, encoding='utf-8') as f:
content = f.readlines()
for line in content:
if line.startswith(u'\ufeff'):
line = line.encode('utf8')[3:].decode('utf8')
data = json.loads(line, strict=False)
s_index = list(data.keys())
str_all = ""
anjian_date=""
if 's23' in data.keys():
str_all = str_all + data[s_index[s_index.index("s23")]]
if 's25' in data.keys():
str_all = str_all + data[s_index[s_index.index("s25")]]
if 's26' in data.keys():
str_all = str_all + data[s_index[s_index.index("s26")]]
if 's27' in data.keys():
str_all = str_all + data[s_index[s_index.index("s27")]]
if 's28' in data.keys():
str_all = str_all + data[s_index[s_index.index("s28")]]
if 's31' in data.keys():
anjian_date =data[s_index[s_index.index("s31")]]
anjian_date = anjian_date.replace('-', '')
if (anjian_date>=startdate and anjian_date <enddate):
good_flag = all(i in str_all for i in good_list) # all 是全部都在才为true any 是有一个就为true
bad_flag = any(j in str_all for j in bad_list)
if bad_flag:
continue
else:
if good_flag:
item_msg = "" # 文件的案号、案件类型、审判程序、发布日期 s7 s8 s9 s41
doc_path = "D:\wenjia" # 所有文书的保存路径
if 's7' in data.keys():
item_msg = item_msg + data[s_index[s_index.index("s7")]]
if 's8' in data.keys():
item_msg = item_msg + data[s_index[s_index.index("s8")]]
if 's9' in data.keys():
item_msg = item_msg + data[s_index[s_index.index("s9")]]
if 's41' in data.keys():
item_msg = item_msg + data[s_index[s_index.index("s41")]]
if '裁定书' in str(data[s_index[s_index.index("s1")]]):
doc_path = doc_path + "\裁定书"
elif '调解书' in str(data[s_index[s_index.index("s1")]]):
doc_path = doc_path + "\裁定书"
elif '决定书' in str(data[s_index[s_index.index("s1")]]):
doc_path = doc_path + "\决定书"
elif '判决书' in str(data[s_index[s_index.index("s1")]]):
doc_path = doc_path + "\判决书"
elif '通知书' in str(data[s_index[s_index.index("s1")]]):
doc_path = doc_path + "\通知书"
anjian_name = str(data[s_index[s_index.index("s1")]])
path = doc_path
doc_download_path = ""
for filewalks in os.walk(path):
for files in filewalks[2]:
if anjian_name in files:
doc_download_path = os.path.join(filewalks[0], files)
# print(doc_download_path)
f_doc_path.append(doc_download_path)
f_doc_name.append(str(data[s_index[s_index.index("s1")]])) # 文件名称
f_name.append(str(data[s_index[s_index.index("s1")]] + "::" + item_msg))
f_content.append(str_all) # 文件内容
# print(str_all)
except:
pass
result_dict['doc_name'] = f_doc_name
result_dict['name'] = f_name
result_dict['doc_path'] = f_doc_path
result_dict['content'] = f_content
return result_dict
Python判决书关键字检索
最新推荐文章于 2023-08-22 17:46:06 发布