讀取txt文件并插入到mysql數(shù)據(jù)庫(kù)
該小腳本適用于每天生成日志等信息到txt文本,然后通過(guò)windows的計(jì)劃任務(wù)定時(shí)去執(zhí)行python腳本打包成的exe文件赊瞬,并將txt中內(nèi)容讀取以及格式化后插入到mysql數(shù)據(jù)庫(kù)
1.生成代碼
python為2.7版本
# coding:utf-8
import MySQLdb
import time
# 當(dāng)天時(shí)間
# print time.strftime("%Y-%m-%d", time.localtime())
# 連接mysql數(shù)據(jù)庫(kù)
conn = MySQLdb.connect(host='localhost',port=3306,user='root',passwd='password',db='dominotypedata',charset='utf8')
cur = conn.cursor()
# 通過(guò)當(dāng)天時(shí)間來(lái)拼出每天生成的txt文本文件隆豹,格式暫定為2018-03-23
today_time=time.strftime("%Y-%m-%d", time.localtime())
#文件名稱(chēng)椭岩,每天會(huì)變化
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') 中文編碼不正常時(shí)需要加上這句
org=line[1].strip('\n').split('=')[2].split('/')[0]
# print cn
# 替換org為中文
if org=='bj':
org='北京'
elif org=='sh':
org='上海'
else:
org='西安'
# 將數(shù)據(jù)插入mysql數(shù)據(jù)庫(kù)
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文件打包成獨(dú)立exe文件
打包成exe文件好處是可以在任意電腦運(yùn)行,并且運(yùn)行的電腦沒(méi)有安裝python也可以
只需要執(zhí)行西面兩行命令:
pip install pyinstaller
pyinstaller -F yourprogram.py
上面兩行命令璃赡,第一行是安裝pyinstaller判哥,第二行是將你的.py文件轉(zhuǎn)為獨(dú)立的.exe文件
-
獨(dú)立的exe可執(zhí)行文件生成的exe文件放在dist目錄中