From 4f7d543ff390023b0c23fe9c9d3e87ddcf39dbe2 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 16 Nov 2023 08:38:46 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=BE=93=E5=87=BA=E6=96=B0=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- favicon.ico | Bin 0 -> 67646 bytes main.ui | 170 ++++++++++++++++--- mycode/main.py | 324 ++++++++++++++++++++++++++++-------- start.ico | Bin 4983 -> 0 bytes start.py | 64 ++++--- summary/template_cbma.xlsx | Bin 48854 -> 50693 bytes summary/template_month.xlsx | Bin 0 -> 12445 bytes ui_mainwindow.py | 74 ++++++-- 宣传信息统计.exe | Bin 0 -> 127488 bytes 9 files changed, 497 insertions(+), 135 deletions(-) create mode 100644 favicon.ico delete mode 100644 start.ico create mode 100644 summary/template_month.xlsx create mode 100644 宣传信息统计.exe diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c68d9a8e7bec4a476803da782100884280c4b205 GIT binary patch literal 67646 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 literal 0 HcmV?d00001 diff --git a/main.ui b/main.ui index 94d160a..a761119 100644 --- a/main.ui +++ b/main.ui @@ -7,7 +7,7 @@ 0 0 600 - 830 + 850 @@ -19,21 +19,21 @@ 600 - 830 + 850 600 - 830 + 850 - 中国建材总院宣传工作信息化管理平台 + 中国建材总院信息统计平台 - start.icostart.ico + favicon.icofavicon.ico false @@ -64,7 +64,7 @@ 10 280 191 - 91 + 81 @@ -127,7 +127,7 @@ 10 - 540 + 510 581 121 @@ -323,9 +323,9 @@ - 150 + 390 0 - 291 + 211 31 @@ -341,7 +341,7 @@ color:white; - 中国建材总院宣传工作信息化管理平台 + 中国建材总院信息统计平台 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -356,7 +356,7 @@ 220 280 371 - 251 + 231 @@ -373,7 +373,7 @@ 10 20 351 - 221 + 201 @@ -390,9 +390,9 @@ 10 - 380 + 370 191 - 151 + 141 @@ -507,9 +507,9 @@ 10 - 670 + 630 581 - 111 + 171 @@ -535,14 +535,14 @@ - 汇总结果Excel: + 分析汇总数据 10 - 80 + 90 91 16 @@ -553,7 +553,7 @@ - 汇总打分Excel: + 总院年度文章表 @@ -573,8 +573,8 @@ 110 - 55 - 381 + 60 + 391 21 @@ -591,8 +591,8 @@ 110 - 80 - 381 + 90 + 401 16 @@ -655,6 +655,130 @@ 汇总打分 + + + + 520 + 110 + 51 + 24 + + + + 打开 + + + + + + 10 + 120 + 91 + 16 + + + + + 10 + + + + 总院年度打分表 + + + + + + 110 + 120 + 401 + 16 + + + + + 9 + + + + + + + + + + 10 + 100 + 561 + 16 + + + + Qt::Horizontal + + + + + + 10 + 130 + 561 + 16 + + + + Qt::Horizontal + + + + + + 10 + 150 + 91 + 16 + + + + + 10 + + + + 单位月度统计表 + + + + + + 520 + 140 + 51 + 24 + + + + 打开 + + + + + + 110 + 150 + 401 + 16 + + + + + 9 + + + + + + diff --git a/mycode/main.py b/mycode/main.py index 924442d..c5342e3 100644 --- a/mycode/main.py +++ b/mycode/main.py @@ -5,6 +5,8 @@ from mycode.base import BASE_DIR import re from openpyxl import load_workbook from urllib.parse import urlparse +from datetime import datetime +import numpy as np wechat_dir = os.path.join(BASE_DIR, 'article') web_dir = os.path.join(BASE_DIR, 'web_dir') @@ -23,106 +25,290 @@ def trans_to_json(): with open('biao.json', 'w', encoding='utf-8') as f: f.write(json_str) -def make_simple_csv_from_db(): +def make_simple_csv_from_db(now: datetime): + # 只查找当前月份更新的公众号数据 + now_month_str = now.strftime('%Y-%m-%d 00:00:00') conn = sqlite3.connect(os.path.join(BASE_DIR, 'db_folder/test.db')) - query = "select id, g.nickname, a.title, a.content_url, datetime(a.p_date, 'unixepoch', 'localtime') as pub_date from articles a LEFT JOIN gzhs g on g.biz = a.biz" + query = f""" + SELECT + id, + g.nickname, + a.title, + a.content_url, + datetime( a.p_date, 'unixepoch', 'localtime' ) AS pub_date, + datetime( g.updated_at, 'unixepoch', 'localtime' ) AS g_updated_at + FROM + articles a + LEFT JOIN gzhs g ON g.biz = a.biz + WHERE + g_updated_at > '{now_month_str}' + """ df = pd.read_sql_query(query, conn) # 关闭数据库连接 conn.close() # 将数据写入CSV文件 df.to_csv(os.path.join(wechat_dir, 'articles.csv'), index=False) +def float_to_int(value): + try: + return int(value) + except: + return value def get_cbma_info_from_db_and_ana(year: str = '2023'): + # 全年统计数据 + zybiz = "MzIzMDU4Njg3MA==" + df_fx = pd.DataFrame({"单位": [ "中国建材总院", + "瑞泰科技", "国检集团", "中材高新", "哈玻院", "中国新材院", "秦皇岛院", "西安墙材院", "咸阳陶瓷院", "钟表所", "总院北分", "中岩科技", "水泥新材院", "中建材科创院", "科建苑", "办公室(董事会办公室)", "党委组织部/人力资源部", "财务部", "科技部", "投资部", "企业管理部、安全环保部", "党群部/宣传统战部", + "党风办/巡察办、纪委综合室", "监督执纪室", "审计办公室"], + "公众号Biz": [zybiz, "MzU0MzgwMzg1NA==", "MzI1MjYzNDQ3NA==", "MzA5MDkzNDA0NQ==", "Mzg2MDg0NjkwNw==", "MzI3MTY5NTExNA==", "MzI1MzY1Njg5MQ==", "MzIxOTQwNjE2MQ==", + "Mzg3OTI0NTYzMA==", "MzA3NTU5NjM2MA==", "", "Mzg2NDgyMDM3OA==","","MzA5NTQ5MjY4Nw==", "", "", "", "", "", "", "", "", "", "", "", ], + # "供总院稿数": [], "供总院专稿数": [], "供总院组稿数": [], "供总院阅读10000及以上数": [], "供总院阅读5000及以上数": [], "供总院阅读1000及以上数": [], + # "1月发布数": [], "1月最高点击文章": [], + # "2月发布数": [], "2月最高点击文章": [], + # "3月发布数": [], "3月最高点击文章": [], + # "4月发布数": [], "4月最高点击文章": [], + # "5月发布数": [], "5月最高点击文章": [], + # "6月发布数": [], "6月最高点击文章": [], + # "7月发布数": [], "7月最高点击文章": [], + # "8月发布数": [], "8月最高点击文章": [], + # "9月发布数": [], "9月最高点击文章": [], + # "10月发布数": [], "10月最高点击文章": [], + # "11月发布数": [], "11月最高点击文章": [], + # "12月发布数": [], "12月最高点击文章": [], + # "半年发布数": [], "半年最高点击文章": [], + # "全年发布数": [], "全年最高点击文章": [] + }) + # 查询所有指定公众号的文章并按年/月排序 conn = sqlite3.connect(os.path.join(BASE_DIR, 'db_folder/test.db')) - query = f''' + query_gzhs = f''' SELECT id, - strftime('%Y年%m月%d日', datetime(a.p_date, 'unixepoch', 'localtime')) as pub_date, + g.biz as gbiz, + strftime('%Y', datetime(a.p_date, 'unixepoch', 'localtime')) as pub_year, + strftime('%m', datetime(a.p_date, 'unixepoch', 'localtime')) as pub_month, + strftime('%d', datetime(a.p_date, 'unixepoch', 'localtime')) as pub_day, g.nickname, a.title, a.content_url, a.read_num FROM - articles a + articles a LEFT JOIN - gzhs g ON g.biz = a.biz + gzhs g ON g.biz = a.biz WHERE - pub_date > '{year}' - AND - g.biz = 'MzIzMDU4Njg3MA==' + pub_year = '{year}' + AND + g.biz in ({', '.join([f"'{biz}'" for biz in df_fx["公众号Biz"].tolist()])}) ORDER BY - pub_date + pub_year, pub_month, pub_day; ''' - df = pd.read_sql_query(query, conn) - # 关闭数据库连接 - conn.close() + df = pd.read_sql_query(query_gzhs, conn) + conn.close + + # 追加总院数据来源 + for ind, row in df.iterrows(): - id = row['id'] - full_path = os.path.join(wechat_dir, row['nickname'], row['id'] + '.md') - try: - with open(full_path, encoding='utf-8') as f: - content = f.read() - # 从content中获取来源 - a_match = re.findall('来源丨(.*?)\n', content) - a_list = [] - if a_match: - # a = a_match[0].replace('\xa0', '、').replace(' ', '、') - # a = re.sub(r'、+', '、', a) - a = re.sub(r'[\xa0\s]+', '、', a_match[0]) - df.at[ind, 'source'] = a - except FileNotFoundError: - print(full_path + '---不存在') - # 填充到execl中 + if row['gbiz'] == zybiz: + full_path = os.path.join(wechat_dir, row['nickname'], row['id'] + '.md') + try: + with open(full_path, encoding='utf-8') as f: + content = f.read() + # 从content中获取来源 + a_match = re.findall('来源丨(.*?)\n', content) + if a_match: + # a = a_match[0].replace('\xa0', '、').replace(' ', '、') + # a = re.sub(r'、+', '、', a) + a = re.sub(r'[\xa0\s]+', '、', a_match[0].strip()) + df.at[ind, 'source'] = a + except FileNotFoundError: + print(full_path + '---不存在') + df['source'] = df['source'].fillna('') + # df_fx['供总院稿数'] = df_fx['单位'].apply(lambda unit: (df['source'].str.contains(unit)).sum()) + # df_fx['供总院专稿数'] = df_fx['单位'].apply(lambda unit: (df['source'] == unit).sum()) + # df_fx['供总院组稿数'] = df_fx['单位'].apply(lambda unit: ((df['source'].str.contains(unit)&(df['source']!=unit))).sum()) + # df_fx['供总院阅读10000及以上数'] = df_fx['单位'].apply(lambda unit: ((df['read_num']>=10000)&(df['source'].str.contains(unit))).sum()) + # df_fx['供总院阅读5000及以上数'] = df_fx['单位'].apply(lambda unit: ((df['read_num']>=5000)&(df['read_num']<10000)&(df['source'].str.contains(unit))).sum()) + # df_fx['供总院阅读1000及以上数'] = df_fx['单位'].apply(lambda unit: ((df['read_num']>=1000)&(df['read_num']<5000)&(df['source'].str.contains(unit))).sum()) + # df_fx['1月发布数'] = df_fx['公众号Biz'].apply(lambda unit: ((df['pub_year']==year)&(df['pub_month']=='01')&(df['gbiz']==unit)).sum() if unit else '') + + # 更详细的分析 + for ind, row in df_fx.iterrows(): + dw = row['单位'] + gbiz = row['公众号Biz'] + + # 全年对总院供给统计 + # if '、' in dw: # 针对这种同一部门的 + # cons = (df['gbiz']==zybiz) + # cons_dw_1 = pd.Series(False, index=df.index) + # for item in dw.split('、'): + # cons_dw_1 = (df['source'].str.contains(item))|cons_dw_1 + # df_fx.at[ind, '供总院全年稿数'] = ((cons_dw_1)&(cons)).sum() + # else: + # df_fx.at[ind, '供总院全年稿数'] = ((df['source'].str.contains(dw))&(df['gbiz']==zybiz)).sum() + df_fx.at[ind, '供总院全年专稿数'] = ((df['source'] == dw)&(df['gbiz']==zybiz)).sum() + df_fx.at[ind, '供总院全年组稿数'] = ((df['source'].str.contains(dw)&(df['source']!=dw))&(df['gbiz']==zybiz)).sum() + df_fx.at[ind, '供总院全年阅读10000及以上数'] = ((df['read_num']>=10000)&(df['source'].str.contains(dw))&(df['gbiz']==zybiz)).sum() + df_fx.at[ind, '供总院全年阅读5000及以上数'] = ((df['read_num']>=5000)&(df['read_num']<10000)&(df['source'].str.contains(dw))&(df['gbiz']==zybiz)).sum() + df_fx.at[ind, '供总院全年阅读1000及以上数'] = ((df['read_num']>=1000)&(df['read_num']<5000)&(df['source'].str.contains(dw))&(df['gbiz']==zybiz)).sum() + + for i in ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月', '上半年', '下半年', '全年']: + if '月' in i: + i_str = i.replace('月', '').zfill(2) + cons_y_m = (df['pub_month']==str(i_str)) + elif i == '上半年': + cons_y_m = (df['pub_month'] =='01')|(df['pub_month'] =='02')|(df['pub_month'] =='03')|(df['pub_month'] =='04')|(df['pub_month'] =='05')|(df['pub_month'] =='06') + elif i == '下半年': + cons_y_m = (df['pub_month'] =='07')|(df['pub_month'] =='08')|(df['pub_month'] =='09')|(df['pub_month'] =='10')|(df['pub_month'] =='11')|(df['pub_month'] =='12') + elif i == '全年': + cons_y_m = pd.Series(True, index=df.index) + + if '、' in dw: # 针对这种同一部门的 + cons_dw_1 = pd.Series(False, index=df.index) + for item in dw.split('、'): + cons_dw_1 = (df['source'].str.contains(item))|cons_dw_1 + df_fx.at[ind, f'供总院{i}稿数'] = ((cons_dw_1)&(cons_y_m)&(df['gbiz']==zybiz)).sum() + else: + df_fx.at[ind, f'供总院{i}稿数'] = (df['source'].str.contains(dw)&(cons_y_m)&(df['gbiz']==zybiz)).sum() + df_fx[f'供总院{i}稿数'] = df_fx[f'供总院{i}稿数'].fillna(0) + df_fx[f'供总院{i}稿数'] = df_fx[f'供总院{i}稿数'].astype(int) + + if gbiz: + # 进行查询 + # 条件 + cons = (cons_y_m)&(df['gbiz']==gbiz) + cons_sum = (cons).sum() + df_fx.at[ind, f'{i}发布数'] = cons_sum + df_fx[f'{i}发布数'] = df_fx[f'{i}发布数'].fillna(0) + df_fx[f'{i}发布数'] = df_fx[f'{i}发布数'].astype(int) + df_fx.at[ind, f'{i}最高点击文章'] = '' + if cons_sum: + max_read_row = df[cons].loc[df[cons]['read_num'].idxmax()] + max_read_row_list = [max_read_row['id'], max_read_row['title'], str(max_read_row['read_num']), f'{max_read_row["pub_year"]}-{max_read_row["pub_month"]}-{max_read_row["pub_day"]}', max_read_row['source']] + df_fx.at[ind, f'{i}最高点击文章'] = '***'.join(max_read_row_list) + + # 矫正数据类型 + df_fx = df_fx.applymap(float_to_int) + # 先输出原始统计数据 + origin_path = os.path.join(BASE_DIR, f'summary/{year}_fx.xlsx') + df_fx.to_excel(origin_path, index=True) + + # 追加到总院年分析表中 template_path = os.path.join(BASE_DIR, 'summary/template_cbma.xlsx') workbook = load_workbook(template_path) sheet = workbook['公众号更新数'] sheet.cell(row=1, column=1, value=f'关于{year}年度中国建材总院新媒体更新情况明细表\n(官微)') + ind_zy = 0 for ind, row in df.iterrows(): - sheet.cell(row=ind+3, column=1, value=str(ind+1)) - sheet.cell(row=ind+3, column=2, value=row['pub_date']) - sheet.cell(row=ind+3, column=3, value=row['title']) - sheet.cell(row=ind+3, column=4, value=row['source']) - sheet.cell(row=ind+3, column=6, value=row['read_num']) - sheet.cell(row=ind+3, column=7, value=row['content_url']) - output_path = os.path.join(BASE_DIR, f'summary/{year}年_cbma.xlsx') - workbook.save(output_path) - # 开始统计分数 - t_1 = (df['source'].str.contains('瑞泰科技')).sum() - t_2 = (df['source'].str.contains('国检集团')).sum() - t_3 = (df['source'].str.contains('中材高新')).sum() - t_4 = (df['source'].str.contains('哈玻院')).sum() - t_5 = (df['source'].str.contains('中国新材院')).sum() - t_6 = (df['source'].str.contains('秦皇岛院')).sum() - t_7 = (df['source'].str.contains('西安墙材院')).sum() - t_8 = (df['source'].str.contains('咸阳陶瓷院')).sum() - t_9 = (df['source'].str.contains('钟表所')).sum() - t_10 = (df['source'].str.contains('总院北分')).sum() - t_11 = (df['source'].str.contains('中岩科技')).sum() - t_12 = (df['source'].str.contains('水泥新材院')).sum() - t_13 = (df['source'].str.contains('中建材科创院')).sum() - t_14 = (df['source'].str.contains('科建苑')).sum() + if row['gbiz'] == zybiz: + sheet.cell(row=ind_zy+3, column=1, value=str(ind_zy+1)) + sheet.cell(row=ind_zy+3, column=2, value=f'{row["pub_year"]}-{row["pub_month"]}-{row["pub_day"]}') + sheet.cell(row=ind_zy+3, column=3, value=row['title']) + sheet.cell(row=ind_zy+3, column=4, value=row['source']) + sheet.cell(row=ind_zy+3, column=6, value=row['read_num']) + sheet.cell(row=ind_zy+3, column=7, value=row['id']) + sheet.cell(row=ind_zy+3, column=8, value=row['content_url']) + ind_zy = ind_zy + 1 + cbma_path = os.path.join(BASE_DIR, f'summary/{year}年_cbma.xlsx') + workbook.save(cbma_path) + print(f'总院{year}年文章表生成完毕!') + template_cal_path = os.path.join(BASE_DIR, 'summary/tempalte_cbma_cal.xlsx') workbook2 = load_workbook(template_cal_path) + need_df_list = [ "瑞泰科技", "国检集团", "中材高新", "哈玻院", "中国新材院", "秦皇岛院", "西安墙材院", "咸阳陶瓷院", "钟表所", "总院北分", "中岩科技", "水泥新材院", "中建材科创院", "科建苑"] sheet2= workbook2['打分表'] sheet2.cell(row=1, column=1, value=f'中国建材总院宣传工作计分表({year}年度)') - sheet2.cell(row=6, column=5, value=t_1) - sheet2.cell(row=6, column=7, value=t_2) - sheet2.cell(row=6, column=9, value=t_3) - sheet2.cell(row=6, column=11, value=t_4) - sheet2.cell(row=6, column=13, value=t_5) - sheet2.cell(row=6, column=15, value=t_6) - sheet2.cell(row=6, column=17, value=t_7) - sheet2.cell(row=6, column=19, value=t_8) - sheet2.cell(row=6, column=21, value=t_9) - sheet2.cell(row=6, column=23, value=t_10) - sheet2.cell(row=6, column=25, value=t_11) - sheet2.cell(row=6, column=27, value=t_12) - sheet2.cell(row=6, column=29, value=t_13) - sheet2.cell(row=6, column=31, value=t_14) - output_path2 = os.path.join(BASE_DIR, f'summary/{year}年_cbma_cal.xlsx') - workbook2.save(output_path2) - return output_path, output_path2 + for ind, val in enumerate(need_df_list): + row_ind_df_fx = df_fx['单位'].to_list().index(val) + sheet2.cell(row=6, column=5+2*ind, value=df_fx.at[row_ind_df_fx, '供总院全年专稿数']) + sheet2.cell(row=10, column=5+2*ind, value=df_fx.at[row_ind_df_fx, '供总院全年组稿数']) + sheet2.cell(row=12, column=5+2*ind, value=df_fx.at[row_ind_df_fx, '供总院全年阅读10000及以上数']) + sheet2.cell(row=13, column=5+2*ind, value=df_fx.at[row_ind_df_fx, '供总院全年阅读5000及以上数']) + sheet2.cell(row=14, column=5+2*ind, value=df_fx.at[row_ind_df_fx, '供总院全年阅读1000及以上数']) + cbma_cal_path = os.path.join(BASE_DIR, f'summary/{year}年_cbma_cal.xlsx') + workbook2.save(cbma_cal_path) + print(f'总院{year}年打分表生成完毕!') + + # need_df_list_full = [ "瑞泰科技股份有限公司", "中国国检测试控股集团股份有限公司", "中材高新材料股份有限公司", "哈尔滨玻璃钢研究院有限公司", "中国新型建材设计研究院有限公司", "秦皇岛玻璃工业研究设计院有限公司", "西安墙体材料研究设计院有限公司", "咸阳陶瓷研究设计院有限公司", "西安轻工业钟表研究所有限公司", "中国建材总院北京分公司", "中建材中岩科技有限公司", "水泥科学与新型建筑材料研究院(中研益)", "中建材科创新技术研究院(山东)有限公司", "北京科建苑物业管理有限公司"] + dw_list = df_fx['单位'].to_list() + template_month_path = os.path.join(BASE_DIR, 'summary/template_month.xlsx') + workbook3 = load_workbook(template_month_path) + for i in ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月', '上半年', '下半年', '全年']: + try: + sheet= workbook3[i] + except KeyError: + sheet = workbook3.copy_worksheet(workbook3['1月']) + sheet.title = i + sheet.cell(row=1, column=1, value=f'关于{year}年度中国建材总院各企业新媒体更新情况统计表\n({i})') + # 开始总院填充数据 + sheet.cell(row=4, column=3, value=df_fx.at[0, f'{i}发布数']) + max_read_row = df_fx.at[dw_list.index('中国建材总院'), f'{i}最高点击文章'] + if max_read_row: + _, title, read_num, pub_date, source = max_read_row.split('***') + sheet.cell(row=7, column=2, value=title) + sheet.cell(row=7, column=4, value=read_num) + sheet.cell(row=7, column=5, value=pub_date) + sheet.cell(row=7, column=6, value=source) + # 开始填充各单位数据 + sheet.cell(row=14, column=3, value=df_fx.at[dw_list.index('瑞泰科技'), f'{i}发布数']) + sheet.cell(row=14, column=6, value=df_fx.at[dw_list.index('瑞泰科技'), f'供总院{i}稿数']) + + sheet.cell(row=15, column=3, value=df_fx.at[dw_list.index('国检集团'), f'{i}发布数']) + sheet.cell(row=15, column=6, value=df_fx.at[dw_list.index('国检集团'), f'供总院{i}稿数']) + + sheet.cell(row=16, column=3, value=df_fx.at[dw_list.index('中材高新'), f'{i}发布数']) + sheet.cell(row=16, column=6, value=df_fx.at[dw_list.index('中材高新'), f'供总院{i}稿数']) + + sheet.cell(row=17, column=3, value=df_fx.at[dw_list.index('哈玻院'), f'{i}发布数']) + sheet.cell(row=17, column=6, value=df_fx.at[dw_list.index('哈玻院'), f'供总院{i}稿数']) + + sheet.cell(row=18, column=3, value=df_fx.at[dw_list.index('中国新材院'), f'{i}发布数']) + sheet.cell(row=18, column=6, value=df_fx.at[dw_list.index('中国新材院'), f'供总院{i}稿数']) + + sheet.cell(row=19, column=3, value=df_fx.at[dw_list.index('秦皇岛院'), f'{i}发布数']) + sheet.cell(row=19, column=6, value=df_fx.at[dw_list.index('秦皇岛院'), f'供总院{i}稿数']) + + sheet.cell(row=20, column=3, value=df_fx.at[dw_list.index('西安墙材院'), f'{i}发布数']) + sheet.cell(row=20, column=6, value=df_fx.at[dw_list.index('西安墙材院'), f'供总院{i}稿数']) + + sheet.cell(row=21, column=3, value=df_fx.at[dw_list.index('咸阳陶瓷院'), f'{i}发布数']) + sheet.cell(row=21, column=6, value=df_fx.at[dw_list.index('咸阳陶瓷院'), f'供总院{i}稿数']) + + sheet.cell(row=22, column=3, value=df_fx.at[dw_list.index('钟表所'), f'{i}发布数']) + sheet.cell(row=22, column=6, value=df_fx.at[dw_list.index('钟表所'), f'供总院{i}稿数']) + + # sheet.cell(row=23, column=3, value=df_fx.at[dw_list.index('总院北分'), f'{i}发布数']) + sheet.cell(row=23, column=6, value=df_fx.at[dw_list.index('总院北分'), f'供总院{i}稿数']) + + sheet.cell(row=24, column=3, value=df_fx.at[dw_list.index('中岩科技'), f'{i}发布数']) + sheet.cell(row=24, column=6, value=df_fx.at[dw_list.index('中岩科技'), f'供总院{i}稿数']) + + sheet.cell(row=25, column=3, value=df_fx.at[dw_list.index('水泥新材院'), f'{i}发布数']) + sheet.cell(row=25, column=6, value=df_fx.at[dw_list.index('水泥新材院'), f'供总院{i}稿数']) + + # sheet.cell(row=26, column=3, value=df_fx.at[dw_list.index('中建材科创院'), f'{i}发布数']) + sheet.cell(row=26, column=6, value=df_fx.at[dw_list.index('中建材科创院'), f'供总院{i}稿数']) + + # sheet.cell(row=27, column=3, value=df_fx.at[dw_list.index('科建苑'), f'{i}发布数']) + sheet.cell(row=27, column=6, value=df_fx.at[dw_list.index('科建苑'), f'供总院{i}稿数']) + + sheet.cell(row=29, column=2, value=df_fx.at[dw_list.index('办公室(董事会办公室)'), f'供总院{i}稿数']) + sheet.cell(row=30, column=2, value=df_fx.at[dw_list.index('党委组织部/人力资源部'), f'供总院{i}稿数']) + sheet.cell(row=31, column=2, value=df_fx.at[dw_list.index('财务部'), f'供总院{i}稿数']) + sheet.cell(row=32, column=2, value=df_fx.at[dw_list.index('科技部'), f'供总院{i}稿数']) + sheet.cell(row=33, column=2, value=df_fx.at[dw_list.index('投资部'), f'供总院{i}稿数']) + sheet.cell(row=29, column=7, value=df_fx.at[dw_list.index('企业管理部、安全环保部'), f'供总院{i}稿数']) + sheet.cell(row=30, column=7, value=df_fx.at[dw_list.index('党群部/宣传统战部'), f'供总院{i}稿数']) + sheet.cell(row=31, column=7, value=df_fx.at[dw_list.index('党风办/巡察办、纪委综合室'), f'供总院{i}稿数']) + sheet.cell(row=32, column=7, value=df_fx.at[dw_list.index('监督执纪室'), f'供总院{i}稿数']) + sheet.cell(row=33, column=7, value=df_fx.at[dw_list.index('审计办公室'), f'供总院{i}稿数']) + + + cbma_month_path = os.path.join(BASE_DIR, f'summary/{year}年_cbma_month.xlsx') + workbook3.save(cbma_month_path) + print(f'总院{year}年月度表生成完毕!') + + return origin_path, cbma_path, cbma_cal_path, cbma_month_path def make_wechat_articles_full(): diff --git a/start.ico b/start.ico deleted file mode 100644 index 2778f631d1e4ec60a5f41c41b398a0922a61eed9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4983 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 diff --git a/start.py b/start.py index f575fdd..6cc1285 100644 --- a/start.py +++ b/start.py @@ -87,33 +87,38 @@ class AnaThread(QThread): now = datetime.datetime.now() self.update_signal.emit({'msg': '对比开始...'}) self.update_signal.emit({'msg': '正在组合微信公众号爬取内容...'}) - make_simple_csv_from_db() + make_simple_csv_from_db(now) make_wechat_articles_full() self.update_signal.emit({'msg': "公众号爬取内容组装完毕!"}) self.update_signal.emit({'msg': '开始对比分析所有内容...'}) wechat_results = ana_wechat() web_results = ana_web() - # 生成汇总表 - self.update_signal.emit({'msg': '开始生成汇总表...'}) - output_excel_path = os.path.join(BASE_DIR, f'summary/{now.year}年{now.month}月-分析结果汇总表.xlsx') - workbook = load_workbook(TEMPLATE_PATH) - wechat_sheet = workbook['公众号'] - web_sheet = workbook['网站'] - for row in wechat_results: - wechat_sheet.append(row) - for row in web_results: - web_sheet.append(row) - workbook.save(output_excel_path) - workbook.close() - # with open('w1.json', 'w', encoding='utf-8') as f: - # f.write(json.dumps(wechat_results, ensure_ascii=False)) + try: + # 生成汇总表 + self.update_signal.emit({'msg': '开始生成汇总表...'}) + output_excel_path = os.path.join(BASE_DIR, f'summary/{now.year}年{now.month}月-分析结果汇总表.xlsx') + workbook = load_workbook(TEMPLATE_PATH) + wechat_sheet = workbook['公众号'] + web_sheet = workbook['网站'] + for row in wechat_results: + wechat_sheet.append(row) + for row in web_results: + web_sheet.append(row) + workbook.save(output_excel_path) + workbook.close() + # with open('w1.json', 'w', encoding='utf-8') as f: + # f.write(json.dumps(wechat_results, ensure_ascii=False)) - # with open('w2.json', 'w', encoding='utf-8') as f: - # f.write(json.dumps(web_results, ensure_ascii=False)) - # 生成简报 - self.update_signal.emit({'msg': '开始生成汇总简报...'}) - output_report_path = gen_doc(wechat_results, web_results) - self.update_signal.emit({'msg': '分析完毕, 请查看结果栏, 可手动校对', 'output_excel_path': output_excel_path, 'output_report_path': output_report_path}) + # with open('w2.json', 'w', encoding='utf-8') as f: + # f.write(json.dumps(web_results, ensure_ascii=False)) + # 生成简报 + self.update_signal.emit({'msg': '开始生成汇总简报...'}) + output_report_path = gen_doc(wechat_results, web_results) + self.update_signal.emit({'msg': '分析完毕, 请查看结果栏, 可手动校对', 'output_excel_path': output_excel_path, 'output_report_path': output_report_path}) + except PermissionError as e: + self.update_signal.emit({'msg': str(e)}) + self.update_signal.emit({'msg': '文件被占用请先关闭!'}) + raise def run(self) -> None: try: @@ -209,6 +214,8 @@ class MainWindow(QMainWindow): self.ui.bCal.clicked.connect(self.cbma_cal) self.ui.bOpenCalRes1.clicked.connect(lambda: self.open_file(self.ui.lCalRes1.text())) self.ui.bOpenCalRes2.clicked.connect(lambda: self.open_file(self.ui.lCalRes2.text())) + self.ui.bOpenCalRes3.clicked.connect(lambda: self.open_file(self.ui.lCalRes3.text())) + self.ui.bOpenCalRes4.clicked.connect(lambda: self.open_file(self.ui.lCalRes4.text())) self.ui.vLog.setModel(self.logModel) self.res1Workbook = None @@ -268,9 +275,16 @@ class MainWindow(QMainWindow): def cbma_cal(self): now_year = datetime.datetime.now().year self.update_log({'msg': '正在分析本年总院官微数据...'}) - output_path, output_path2 = get_cbma_info_from_db_and_ana(now_year) - self.ui.lCalRes1.setText(output_path) - self.ui.lCalRes2.setText(output_path2) + try: + origin_path, cbma_path, cbma_cal_path, cbma_month_path = get_cbma_info_from_db_and_ana(now_year) + except PermissionError as e: + self.update_log({'msg': str(e)}) + self.update_log({'msg': '文件被占用请先关闭!'}) + raise + self.ui.lCalRes1.setText(origin_path) + self.ui.lCalRes2.setText(cbma_path) + self.ui.lCalRes3.setText(cbma_cal_path) + self.ui.lCalRes4.setText(cbma_month_path) self.update_log({'msg': '分析完毕!'}) def update_log(self, rdict): @@ -312,7 +326,7 @@ class MainWindow(QMainWindow): if __name__ == "__main__": - # gen_doc() + # pyside6-uic main.ui -o ui_mainwindow.py print('正在启动程序...') app = MyApplication(sys.argv) main_window = app.createMainWindow() diff --git a/summary/template_cbma.xlsx b/summary/template_cbma.xlsx index 9bd26a7e12f8909969eb35fa0e74856d6223025b..06b9964634b0ab53d236250ed6614d4c9173a451 100644 GIT binary patch literal 50693 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 BU?uy5cczuVFwx| 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 literal 0 HcmV?d00001 diff --git a/ui_mainwindow.py b/ui_mainwindow.py index 72fa742..106f083 100644 --- a/ui_mainwindow.py +++ b/ui_mainwindow.py @@ -23,16 +23,16 @@ class Ui_MainWindow(object): def setupUi(self, MainWindow): if not MainWindow.objectName(): MainWindow.setObjectName(u"MainWindow") - MainWindow.resize(600, 830) + MainWindow.resize(600, 850) sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth()) MainWindow.setSizePolicy(sizePolicy) - MainWindow.setMinimumSize(QSize(600, 830)) - MainWindow.setMaximumSize(QSize(600, 830)) + MainWindow.setMinimumSize(QSize(600, 850)) + MainWindow.setMaximumSize(QSize(600, 850)) icon = QIcon() - icon.addFile(u"start.ico", QSize(), QIcon.Normal, QIcon.Off) + icon.addFile(u"favicon.ico", QSize(), QIcon.Normal, QIcon.Off) MainWindow.setWindowIcon(icon) MainWindow.setAutoFillBackground(False) self.centralwidget = QWidget(MainWindow) @@ -44,7 +44,7 @@ class Ui_MainWindow(object): self.label.setScaledContents(True) self.groupBox = QGroupBox(self.centralwidget) self.groupBox.setObjectName(u"groupBox") - self.groupBox.setGeometry(QRect(10, 280, 191, 91)) + self.groupBox.setGeometry(QRect(10, 280, 191, 81)) font = QFont() font.setPointSize(11) self.groupBox.setFont(font) @@ -65,7 +65,7 @@ class Ui_MainWindow(object): self.label_5.setStyleSheet(u"color: red;") self.groupBox_5 = QGroupBox(self.centralwidget) self.groupBox_5.setObjectName(u"groupBox_5") - self.groupBox_5.setGeometry(QRect(10, 540, 581, 121)) + self.groupBox_5.setGeometry(QRect(10, 510, 581, 121)) self.groupBox_5.setFont(font) self.label_7 = QLabel(self.groupBox_5) self.label_7.setObjectName(u"label_7") @@ -122,7 +122,7 @@ class Ui_MainWindow(object): self.bAna.setStyleSheet(u"background-color:#409EFF; color: white; border-radius: 2px") self.label_9 = QLabel(self.centralwidget) self.label_9.setObjectName(u"label_9") - self.label_9.setGeometry(QRect(150, 0, 291, 31)) + self.label_9.setGeometry(QRect(390, 0, 211, 31)) font6 = QFont() font6.setFamilies([u"\u6977\u4f53"]) font6.setPointSize(12) @@ -134,16 +134,16 @@ class Ui_MainWindow(object): self.label_9.setMargin(6) self.groupBox_6 = QGroupBox(self.centralwidget) self.groupBox_6.setObjectName(u"groupBox_6") - self.groupBox_6.setGeometry(QRect(220, 280, 371, 251)) + self.groupBox_6.setGeometry(QRect(220, 280, 371, 231)) self.groupBox_6.setFont(font) self.vLog = QListView(self.groupBox_6) self.vLog.setObjectName(u"vLog") - self.vLog.setGeometry(QRect(10, 20, 351, 221)) + self.vLog.setGeometry(QRect(10, 20, 351, 201)) self.vLog.setFont(font3) self.vLog.setStyleSheet(u"") self.groupBox_2 = QGroupBox(self.centralwidget) self.groupBox_2.setObjectName(u"groupBox_2") - self.groupBox_2.setGeometry(QRect(10, 380, 191, 151)) + self.groupBox_2.setGeometry(QRect(10, 370, 191, 141)) self.groupBox_2.setFont(font) self.bWebSite = QPushButton(self.groupBox_2) self.bWebSite.setObjectName(u"bWebSite") @@ -170,7 +170,7 @@ class Ui_MainWindow(object): self.bStart.setStyleSheet(u"background-color:#409EFF; color: white; border-radius: 2px") self.groupBox_7 = QGroupBox(self.centralwidget) self.groupBox_7.setObjectName(u"groupBox_7") - self.groupBox_7.setGeometry(QRect(10, 670, 581, 111)) + self.groupBox_7.setGeometry(QRect(10, 630, 581, 171)) self.groupBox_7.setFont(font) self.label_10 = QLabel(self.groupBox_7) self.label_10.setObjectName(u"label_10") @@ -178,7 +178,7 @@ class Ui_MainWindow(object): self.label_10.setFont(font2) self.label_11 = QLabel(self.groupBox_7) self.label_11.setObjectName(u"label_11") - self.label_11.setGeometry(QRect(10, 80, 91, 16)) + self.label_11.setGeometry(QRect(10, 90, 91, 16)) self.label_11.setFont(font2) self.line_2 = QFrame(self.groupBox_7) self.line_2.setObjectName(u"line_2") @@ -187,11 +187,11 @@ class Ui_MainWindow(object): self.line_2.setFrameShadow(QFrame.Sunken) self.lCalRes1 = QLabel(self.groupBox_7) self.lCalRes1.setObjectName(u"lCalRes1") - self.lCalRes1.setGeometry(QRect(110, 55, 381, 21)) + self.lCalRes1.setGeometry(QRect(110, 60, 391, 21)) self.lCalRes1.setFont(font3) self.lCalRes2 = QLabel(self.groupBox_7) self.lCalRes2.setObjectName(u"lCalRes2") - self.lCalRes2.setGeometry(QRect(110, 80, 381, 16)) + self.lCalRes2.setGeometry(QRect(110, 90, 401, 16)) self.lCalRes2.setFont(font3) self.bOpenCalRes1 = QPushButton(self.groupBox_7) self.bOpenCalRes1.setObjectName(u"bOpenCalRes1") @@ -205,6 +205,38 @@ class Ui_MainWindow(object): self.bCal.setGeometry(QRect(20, 30, 151, 24)) self.bCal.setFont(font) self.bCal.setStyleSheet(u"background-color:#409EFF; color: white; border-radius: 2px") + self.bOpenCalRes3 = QPushButton(self.groupBox_7) + self.bOpenCalRes3.setObjectName(u"bOpenCalRes3") + self.bOpenCalRes3.setGeometry(QRect(520, 110, 51, 24)) + self.label_12 = QLabel(self.groupBox_7) + self.label_12.setObjectName(u"label_12") + self.label_12.setGeometry(QRect(10, 120, 91, 16)) + self.label_12.setFont(font2) + self.lCalRes3 = QLabel(self.groupBox_7) + self.lCalRes3.setObjectName(u"lCalRes3") + self.lCalRes3.setGeometry(QRect(110, 120, 401, 16)) + self.lCalRes3.setFont(font3) + self.line_3 = QFrame(self.groupBox_7) + self.line_3.setObjectName(u"line_3") + self.line_3.setGeometry(QRect(10, 100, 561, 16)) + self.line_3.setFrameShape(QFrame.HLine) + self.line_3.setFrameShadow(QFrame.Sunken) + self.line_4 = QFrame(self.groupBox_7) + self.line_4.setObjectName(u"line_4") + self.line_4.setGeometry(QRect(10, 130, 561, 16)) + self.line_4.setFrameShape(QFrame.HLine) + self.line_4.setFrameShadow(QFrame.Sunken) + self.label_13 = QLabel(self.groupBox_7) + self.label_13.setObjectName(u"label_13") + self.label_13.setGeometry(QRect(10, 150, 91, 16)) + self.label_13.setFont(font2) + self.bOpenCalRes4 = QPushButton(self.groupBox_7) + self.bOpenCalRes4.setObjectName(u"bOpenCalRes4") + self.bOpenCalRes4.setGeometry(QRect(520, 140, 51, 24)) + self.lCalRes4 = QLabel(self.groupBox_7) + self.lCalRes4.setObjectName(u"lCalRes4") + self.lCalRes4.setGeometry(QRect(110, 150, 401, 16)) + self.lCalRes4.setFont(font3) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QMenuBar(MainWindow) self.menubar.setObjectName(u"menubar") @@ -220,7 +252,7 @@ class Ui_MainWindow(object): # setupUi def retranslateUi(self, MainWindow): - MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"\u4e2d\u56fd\u5efa\u6750\u603b\u9662\u5ba3\u4f20\u5de5\u4f5c\u4fe1\u606f\u5316\u7ba1\u7406\u5e73\u53f0", None)) + MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"\u4e2d\u56fd\u5efa\u6750\u603b\u9662\u4fe1\u606f\u7edf\u8ba1\u5e73\u53f0", None)) self.label.setText("") self.groupBox.setTitle(QCoreApplication.translate("MainWindow", u"1.\u5fae\u4fe1\u516c\u4f17\u53f7\u4fe1\u606f\u6293\u53d6", None)) self.bWechat.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00\u5de5\u5177", None)) @@ -235,7 +267,7 @@ class Ui_MainWindow(object): self.bBiao.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00\u5206\u6790\u6807\u51c6Excel", None)) self.label_4.setText(QCoreApplication.translate("MainWindow", u"\u8bf7\u5728\u4fee\u6539\u540e\u4fdd\u5b58\u5e76\u5173\u95ed", None)) self.bAna.setText(QCoreApplication.translate("MainWindow", u"\u5f00\u59cb\u5206\u6790", None)) - self.label_9.setText(QCoreApplication.translate("MainWindow", u"\u4e2d\u56fd\u5efa\u6750\u603b\u9662\u5ba3\u4f20\u5de5\u4f5c\u4fe1\u606f\u5316\u7ba1\u7406\u5e73\u53f0", None)) + self.label_9.setText(QCoreApplication.translate("MainWindow", u"\u4e2d\u56fd\u5efa\u6750\u603b\u9662\u4fe1\u606f\u7edf\u8ba1\u5e73\u53f0", None)) self.groupBox_6.setTitle(QCoreApplication.translate("MainWindow", u"\u64cd\u4f5c\u65e5\u5fd7\u663e\u793a", None)) self.groupBox_2.setTitle(QCoreApplication.translate("MainWindow", u"2.\u786e\u8ba4\u9700\u8981\u722c\u53d6\u7684\u5b98\u7f51", None)) self.bWebSite.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00\u7f51\u7ad9\u5217\u8868Excel", None)) @@ -245,12 +277,18 @@ class Ui_MainWindow(object): self.lSize.setText(QCoreApplication.translate("MainWindow", u"5", None)) self.bStart.setText(QCoreApplication.translate("MainWindow", u"\u5f00\u59cb\u722c\u53d6", None)) self.groupBox_7.setTitle(QCoreApplication.translate("MainWindow", u"\u603b\u9662\u5b98\u5fae", None)) - self.label_10.setText(QCoreApplication.translate("MainWindow", u"\u6c47\u603b\u7ed3\u679cExcel:", None)) - self.label_11.setText(QCoreApplication.translate("MainWindow", u"\u6c47\u603b\u6253\u5206Excel:", None)) + self.label_10.setText(QCoreApplication.translate("MainWindow", u"\u5206\u6790\u6c47\u603b\u6570\u636e", None)) + self.label_11.setText(QCoreApplication.translate("MainWindow", u"\u603b\u9662\u5e74\u5ea6\u6587\u7ae0\u8868", None)) self.lCalRes1.setText("") self.lCalRes2.setText("") self.bOpenCalRes1.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00", None)) self.bOpenCalRes2.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00", None)) self.bCal.setText(QCoreApplication.translate("MainWindow", u"\u6c47\u603b\u6253\u5206", None)) + self.bOpenCalRes3.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00", None)) + self.label_12.setText(QCoreApplication.translate("MainWindow", u"\u603b\u9662\u5e74\u5ea6\u6253\u5206\u8868", None)) + self.lCalRes3.setText("") + self.label_13.setText(QCoreApplication.translate("MainWindow", u"\u5355\u4f4d\u6708\u5ea6\u7edf\u8ba1\u8868", None)) + self.bOpenCalRes4.setText(QCoreApplication.translate("MainWindow", u"\u6253\u5f00", None)) + self.lCalRes4.setText("") # retranslateUi diff --git a/宣传信息统计.exe b/宣传信息统计.exe new file mode 100644 index 0000000000000000000000000000000000000000..28d7e8e2da2686e60533a94a35510c12c1343cc5 GIT binary patch literal 127488 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 p>6u)Jpl=WtD-QQ`dy9v literal 0 HcmV?d00001