newmediamonitoring/新媒体更新脚本/查找头条名称更改.py

61 lines
2.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 更新新媒体脚本,结果为有出入的新媒体列表。
'''
1,将excel转为csv使用utf-8编码集。
2、获取csv内容
3、与数据库中的数据逐项对比
'''
import csv
import uuid
import psycopg2 as psycopg2
# code = None
# alias = None
# attention = None
# remark = None
# identificationcode = None
# function = None
# articleurl = None
# weixinid = None
# type = None
G2 = 'host=210.77.68.250 port=5432 dbname=newmediaDB3 user=newmedia password=newmedia2020!@#'
def get_csv_weixin(path):
with open("D:/2021/舆论监测平台/数据/数据库更新/新媒体对比结果_头条_账号名称更改.csv", "w", newline='',encoding='utf-8') as csvfile:
writer = csv.writer(csvfile)
toutiao_code_list = []
csv_code_list = []
r = None
with open(path, encoding='utf-8') as csvfile:
reader = csv.reader(csvfile)
for r in reader:
if r[1] != '单位全称':
if '头条' in r[7]:
csv_code_list.append(r[4])
with psycopg2.connect(G2) as connection:
with connection.cursor() as cursor:
try:
cursor.execute(
"select * from dashboard_toutiao")
connection.commit()
for c in cursor:
toutiao_code_list.append(c[1])
except Exception as e:
print(e)
print(len(toutiao_code_list),len(csv_code_list))
print( len(list(set( toutiao_code_list ) ^ set( csv_code_list ))))
for i in list(set( toutiao_code_list ) ^ set( csv_code_list )):
if i in toutiao_code_list and i not in csv_code_list:
writer.writerow(
[i,'删除'])
elif i in csv_code_list and i not in toutiao_code_list:
writer.writerow(
[i, '新增'])
else:
writer.writerow(
[i, '异常'])
if __name__ == '__main__':
get_csv_weixin('D:/2021/舆论监测平台/数据/Task_All.csv')