当前位置: 首页 > news >正文

国家建设厅官方网站wordpress4.9.1下载

国家建设厅官方网站,wordpress4.9.1下载,科技有限公司经营范围,华为商城官网手机版app前段时间有位客户问: 你们的程序能不能给我们生成个 txt 文件,把新增的员工都放进来,字段也不需要太多,就要 员工姓名/卡号/员工编号/员工职位/公司 这些字段就行了,然后我们的程序会去读取这个 txt 文件,拿里面的内容,读完之后会这个文件删掉 我: 可以接受延迟吗?可能没办法实…前段时间有位客户问: 你们的程序能不能给我们生成个 txt 文件,把新增的员工都放进来,字段也不需要太多,就要 员工姓名/卡号/员工编号/员工职位/公司 这些字段就行了,然后我们的程序会去读取这个 txt 文件,拿里面的内容,读完之后会这个文件删掉 我: 可以接受延迟吗?可能没办法实时生成,写个脚本,用定时任务去跑还是可以实现的 客户: 可以呀,那个脚本 30mins 跑一次就行 这篇文章就记录一下大概实现思路,后续如果遇到类似需求,就可以直接 copy 代码了 实现思路: 定义全局变量 update_time判断 update_time 是否为空 为空,说明是第一次查询数据,取查到的最后一条记录的 create_time ,赋值给 update_time不为空,说明不是第一次查询数据,查询数据时, create_time update_time ,同时更新 update_time 判断 txt 文件是否存在 存在,则 txt 表头不需要重新生成不存在, txt 表头需要重新生成 其实逻辑很简单, Python 类库也很丰富,接下来就上代码: import pymysql import os import argparse import schedule import datetimeupdate_time def handle_variables(server_ip,password):global real_ip real_ip server_ipglobal root_password root_password passworddef get_person_info():connection pymysql.connect(host real_ip,user root,password root_password,db xxx)try:global update_timecur connection.cursor()if update_time :sql select name,card_num,code,postion,company_id,gmt_create from personelse :sql select name,card_num,code,postion,company_id,gmt_create from person where gmt_create update_time cur.execute(sql)query_person_info_list cur.fetchall()# get the time of the last recordif len(query_person_info_list) ! 0:temp_list query_person_info_list[-1]update_time temp_list[-1]if isinstance(update_time, datetime.datetime):update_time update_time.strftime(%Y-%m-%d %H:%M:%S)# if the txt not exists, add new textif not os.path.exists(add_person.txt) :with open(add_person.txt, w) as f:f.write(Lastname, Firstname, CardNumber, Employee ID, Designation, Department \n)for person_info in query_person_info_list :person_name person_info[0]# the name is generally first last, which needs to be convertedperson_name_list person_name.split()person_first_name person_name_list[0]start_length len(person_first_name) 1person_last_name person_name[start_length:]f.write(str(person_last_name) , str(person_first_name) , )card_number person_info[1]employee_id person_info[2]designation person_info[3]department person_info[4]if card_number is not None :f.write(str(card_number) , )else :f.write(, )if employee_id is not None :f.write(str(employee_id) , )else :f.write(, )if designation is not None :f.write(str(designation) , )else :f.write(, )if department is not None :# get department namedepartment_sql select name from zone where id str(department)cur.execute(department_sql)department_result cur.fetchone()department_name department_result[0]f.write(str(department_name))else :f.write(, )f.write(\n)# if the txt exists, update the textelse :# get original datawith open(add_person.txt, r) as e:data e.readlines()with open(add_person.txt, w) as f:# first save the original data for write_data in data :f.write(write_data)# then save new datafor person_info in query_person_info_list :person_name person_info[0]# the name is generally first last, which needs to be convertedperson_name_list person_name.split()person_first_name person_name_list[0]start_length len(person_first_name) 1person_last_name person_name[start_length:]f.write(str(person_last_name) , str(person_first_name) , )card_number person_info[1]employee_id person_info[2]designation person_info[3]department person_info[4]if card_number is not None :f.write(str(card_number) , )else :f.write(, )if employee_id is not None :f.write(str(employee_id) , )else :f.write(, )if designation is not None :f.write(str(designation) , )else :f.write(, )if department is not None :# get department namedepartment_sql select name from zone where id str(department)cur.execute(department_sql)department_result cur.fetchone()department_name department_result[0]f.write(str(department_name))else :f.write(, )f.write(\n)except IOError:print(Error: get update person info fail)finally:cur.close()connection.close()if __name__ __main__:parser argparse.ArgumentParser(descriptionplease enter)parser.add_argument(--server_ip, -server, helpserver ip, default, typestr, requiredFalse)parser.add_argument(--password, -p, helpdevops infra password, default, typestr, requiredFalse)args parser.parse_args()# let the variable become a global variable, no need to pass ithandle_variables(args.server_ip, args.password)# execute the method every 30mins#schedule.every(30).minutes.do(get_person_info)# for test -- execute the method every 30 secondsschedule.every(30).seconds.do(get_person_info)while True:# run task schedule.run_pending() 以上~
http://www.hkea.cn/news/14463264/

相关文章:

  • 好看的网站建设公司红圈工程项目管理软件
  • 房产部门成立网站中国太空空间站
  • 南京市雨花区建设局网站深圳网站建设 龙华信科咨询
  • 迁安建设局官方网站黄页网络的推广网
  • 网站开发和桌面开发哪个难遵义市建设局网站官网
  • 本地网站怎么做微信公众号登录不上
  • 网站seo推广多少钱花里胡哨的网站
  • 网站建设应该有什么特点今天的新闻
  • 深圳seo网站优化公司江阴网站建设培训
  • 检测网站是否被挂黑链公司网站背景图片
  • 潍坊+网站建设远丰做网站怎么样
  • 网站建设前期要多久知识库主题 wordpress
  • 2018如何做网站外链武威网站制作公司服务电话
  • 徐州做网站的公司有哪些怎么在网上卖东西
  • 在兔展上怎么做网站页面户外产品销售公司网站建设
  • 怎么买域名建网站网站开发需要什么工具
  • 怎么样让公司网站二 一九wordpress
  • 企业网站建设的几种形式做ppt很有创意的网站
  • 视频制作软件排行榜泉州seo按天计费
  • 东莞seo建站广告企业网站系统设计论文
  • 知名设计公司网站内容营销的4个主要方式
  • sae网站代备案怎么使用服务器做网站
  • 网页设计与网站建设作品淄博网泰专业做网站
  • 公司网站源码视频网站建设解决方案
  • 网站建设专利长沙最大的广告公司
  • seo关键词排名在线查询seo服务器优化
  • 企业网站建设 价格互助盘网站怎么做的
  • 长春制作公司网站佛山市网站公司
  • 做网站首页图片素材wordpress 增删改查 函数
  • 免费自建网站步骤建立html网站