feat 🐛:add before

v2025-07-15-table
许标 4 days ago
parent 76310b30dd
commit de1839b27d

Binary file not shown.

@ -104,13 +104,29 @@ def deal_docx(folder_path, save_path=None, time_type=0):
) )
continue continue
if "first_point_para2" not in doc_dict:
if re.match(r".*抢修工单.*", para.text):
# print(para.text)
doc_dict["first_point_para2"] = re.sub(
r"[,]整体抢修工作态势正常。+$", "", para.text
)
continue
# 第二点过载台数 # 第二点过载台数
if re.search(r"过载(\d+)[条台]", para.text):
doc_dict["over_load"] = (
re.search(r"过载(\d+)[条台]", para.text).group().replace("过载", "")
).replace("", "").replace("", "")
# print(doc_dict['over_load'])
continue
"""
if re.search(r"过载\d+台", para.text): if re.search(r"过载\d+台", para.text):
doc_dict["over_load"] = ( doc_dict["over_load"] = (
re.search(r"过载\d+台", para.text).group().replace("过载", "") re.search(r"过载\d+台", para.text).group().replace("过载", "")
).replace("", "") ).replace("", "")
# print(doc_dict['over_load']) # print(doc_dict['over_load'])
continue continue
"""
# 拿到舆情的段落 # 拿到舆情的段落
paragraphs_sentiment = doc_sentiment.paragraphs paragraphs_sentiment = doc_sentiment.paragraphs
@ -137,11 +153,12 @@ def deal_docx(folder_path, save_path=None, time_type=0):
table1 = tables[0] table1 = tables[0]
# 表2配变过载监测汇总表 # 表2配变过载监测汇总表——配变过载集成到了一张表table1
table2 = tables[1] #table2 = tables[1]
# 表3停电用户前五供电局 # 表3停电用户前五供电局——停电前五移动到了第二张表
table3 = tables[2] table3 = tables[1]
#table3 = tables[2]
# 新增表4 95598供电类投诉前五供电局统计表 # 新增表4 95598供电类投诉前五供电局统计表
# table4 = doc_poweroff.add_table(6, 5) # table4 = doc_poweroff.add_table(6, 5)
@ -424,6 +441,8 @@ def deal_docx(folder_path, save_path=None, time_type=0):
current_doc_name = f"南方电网公司停电抢修投诉服务舆情管控三工单联动监测日报{year}{int(month):02d}{int(day):02d}.docx" current_doc_name = f"南方电网公司停电抢修投诉服务舆情管控三工单联动监测日报{year}{int(month):02d}{int(day):02d}.docx"
if "over_load" not in doc_dict:
raise Exception("过载数据不符合标准未解析,请查看文档")
doc_dict_over_load = doc_dict["over_load"] doc_dict_over_load = doc_dict["over_load"]
over_load_before = extract_overload_info_from_previous_day( over_load_before = extract_overload_info_from_previous_day(
current_word=current_doc_name current_word=current_doc_name
@ -678,21 +697,20 @@ def deal_docx(folder_path, save_path=None, time_type=0):
# 复制表1的数据 # 复制表1的数据
logger.info("将配变过载写入表0第二行开始第9列开始") logger.info("将配变过载写入表0第二行开始第9列开始")
# 定义要查看的区域范围 # 定义要查看的区域范围
start_row2 = 1 # 起始行索引从0开始 start_row2 = 2 # 起始行索引从0开始
end_row2 = 7 # 结束行索引(不包括) end_row2 = 8 # 结束行索引(不包括)
start_col2 = 2 # 起始列索引从0开始 start_col2 = 9 # 起始列索引从0开始
end_col2 = 4 # 结束列索引(不包括) end_col2 = 11 # 结束列索引(不包括)
target_row=1 #target_row=1
target_col=7 #target_col=7
copy_table_no_align( copy_table(
table2, table1,
electricity_daily.tables[0], electricity_daily.tables[0],
start_row2, start_row2,
end_row2, end_row2,
start_col2, start_col2,
end_col2, end_col2,
target_row, 0
target_col
) )
""" """
copy_table( copy_table(

@ -75,12 +75,13 @@ def extract_overload_info_from_previous_day(
# 提取过载台数信息 # 提取过载台数信息
overload_info = None overload_info = None
for para in doc.paragraphs: for para in doc.paragraphs:
if re.search(r"过载\d+", para.text): if re.search(r"过载(\d+)[条]", para.text):
overload_info = ( overload_info = (
re.search(r"过载\d+", para.text) re.search(r"过载(\d+)[条]", para.text)
.group() .group()
.replace("过载", "") .replace("过载", "")
.replace("", "") .replace("", "")
.replace("", "")
) )
break break

Loading…
Cancel
Save