70 lines
3.2 KiB
Python
70 lines
3.2 KiB
Python
# 更新新媒体脚本,结果为有出入的新媒体列表。
|
||
'''
|
||
1,将excel转为csv,使用utf-8编码集。
|
||
2、获取csv内容
|
||
3、与数据库中的数据逐项对比
|
||
'''
|
||
import csv
|
||
import re
|
||
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 set_csv_weixin(path):
|
||
with open(path, encoding='utf-8') as csvfile:
|
||
reader = csv.reader(csvfile)
|
||
for r in reader:
|
||
if r[1] == '删除':
|
||
pass
|
||
# with psycopg2.connect(G2) as connection:
|
||
# with connection.cursor() as cursor:
|
||
# cursor.execute(
|
||
# "delete from dashboard_weixin where code = '%s'" %(re.sub('\s+', '', r[0]).strip()))
|
||
# connection.commit()
|
||
elif r[1] == '新增':
|
||
# s = str(r[2]).split('[')[1].split(']')[0].replace("'","").split(',')
|
||
with open('D:/2020/舆论监测平台/数据/Task_All.csv',encoding='utf-8') as c:
|
||
t = csv.reader(c)
|
||
for i in t:
|
||
# print(i[4],r[0])
|
||
if re.sub('\s+', '', r[0]).strip() == re.sub('\s+', '', i[4]).strip():
|
||
|
||
with psycopg2.connect(G2) as connection:
|
||
with connection.cursor() as cursor:
|
||
try:
|
||
cursor.execute(
|
||
"select * from dashboard_organization where name = '%s'" % (
|
||
re.sub('\s+', '', i[1]).strip()))
|
||
connection.commit()
|
||
for c in cursor:
|
||
# print(c[0] + "22222222222222222222222222222222222")
|
||
id = uuid.uuid4()
|
||
cursor.execute(
|
||
"insert into dashboard_weixin(id,code, created, updated,organization_id,image,alias,status,weixinid,attention, remark,identificationcode,function,articleurl) values (%s,%s,now(),now(),%s,'weixin.png','',3,%s,'','',%s,%s,%s)",
|
||
(str(id), re.sub('\s+', '', i[4]).strip(), c[0], i[13], i[3], i[8], i[12]))
|
||
connection.commit()
|
||
|
||
|
||
except Exception as e:
|
||
print(i[1]+"+++++++++++++++++++++++++++++++++++++++++++++++")
|
||
# with open('D:/2020/新媒体监测/单位对不上.csv', "w", newline='',encoding='utf-8') as f:
|
||
# writer = csv.writer(f)
|
||
# writer.writerow(
|
||
# i[1])
|
||
|
||
|
||
if __name__ == '__main__':
|
||
set_csv_weixin('D:/2020/舆论监测平台/数据/数据库更新/新媒体对比结果_微信_账号名称更改.csv')
|