读取txt文件并插入到mysql数据库
该小脚本适用于每天生成日志等信息到txt文本,然后通过windows的计划任务定时去执行python脚本打包成的exe文件,并将txt中内容读取以及格式化后插入到mysql数据库
1.生成代码
python为2.7版本
# coding:utf-8
import MySQLdb
import time
# 当天时间
# print time.strftime("%Y-%m-%d", time.localtime())
# 连接mysql数据库
conn = MySQLdb.connect(host='localhost',port=3306,user='root',passwd='password',db='dominotypedata',charset='utf8')
cur = conn.cursor()
# 通过当天时间来拼出每天生成的txt文本文件,格式暂定为2018-03-23
today_time=time.strftime("%Y-%m-%d", time.localtime())
#文件名称,每天会变化
now_time=today_time+'.txt'
# print now_time
# id=0 插入id
with open(now_time,'rb') as f:
lines = f.readlines()
if lines:
for line in lines:
line=line.strip('\n')
line=line.split(',')
print line
# id+=1
dt=line[0]
uid=line[1].strip('\n').split('=')[1].split('/')[0]
cn=line[2].strip('\n')
# cn=cn.decode('gbk').encode('utf-8') 中文编码不正常时需要加上这句
org=line[1].strip('\n').split('=')[2].split('/')[0]
# print cn
# 替换org为中文
if org=='bj':
org='北京'
elif org=='sh':
org='上海'
else:
org='西安'
# 将数据插入mysql数据库
cur.execute("insert into mobile_login(date,uid,cn,org) values(%s,%s,%s,%s)",[dt,uid,cn,org])
conn.commit()
print('Total:'+str(len(lines)))
print('write to mysql success')
conn.close()
2.将xx.py文件打包成独立exe文件
打包成exe文件好处是可以在任意电脑运行,并且运行的电脑没有安装python也可以
只需要执行西面两行命令:
pip install pyinstaller
pyinstaller -F yourprogram.py
上面两行命令,第一行是安装pyinstaller,第二行是将你的.py文件转为独立的.exe文件
-
独立的exe可执行文件生成的exe文件放在dist目录中