使用py 快速读文件目录写数据库


1
# -*- coding: utf-8 -*- 2 import os,time,glob 3 import re 4 import pymysql 5 6 # 打开数据库连接 7 def setup_mysqlDB(): 8 print("setup_mysqlDB()函数开始执行") 9 global db; # 设置db为全局变量 10 global cursor 11 try: 12 db = pymysql.connect( 13 host='localhost', 14 port=3306, 15 user='root', 16 passwd='root', 17 db='workspace', 18 charset='utf8' 19 ) 20 except Exception as err: 21 print("数据库打开失败", err) 22 else: 23 print("数据库打开成功") 24 cursor = db.cursor(); # 设置游标对象 cursor为全局变量 25 finally: 26 print("setup_mysqlDB()函数执行完毕") 27 28 def createtable_mysqlDB():# 创建数据表 29 print ("createtable_mysqlDB函数开始执行") 30 try: 31 global cursor; # 设置游标对象 cursor为全局变量 32 # 使用 cursor() 方法关联游标对象 cursor 33 cursor = db.cursor() 34 # 使用 execute() 方法执行 SQL,如果表存在则删除 35 cursor.execute("DROP TABLE IF EXISTS work") 36 # 使用预处理语句创建表 37 sql = """CREATE TABLE work ( 38 id int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, 39 status varchar(20) NOT NULL, 40 item varchar(200) NOT NULL UNIQUE, 41 starttime varchar(40) NOT NULL, 42 updatetime varchar(40) NOT NULL 43 )""" 44 #执行语句 45 cursor.execute(sql) 46 except Exception as err: 47 print("数据表创建失败:",err) 48 else: 49 print("数据表创建成功") 50 print ("执行execute()方法后影响的行数为:%d" % (cursor.rowcount)) 51 finally: 52 print ("createtable_mysqlDB函数执行完毕") 53 54 def adddata_mysqlDB(status,item,starttime,updatetime): # 向数据库中插入数据 55 print("adddata_mysqlDB函数开始执行") 56 try: 57 # SQL 插入语句 58 sql = "INSERT INTO work(status,item,starttime,updatetime)\ 59 VALUES ('%s','%s','%s','%s')" % \ 60 (status,item,starttime,updatetime) 61 # 执行sql语句 62 cursor.execute(sql) 63 # 提交到数据库执行 64 db.commit() 65 except Exception as err: 66 print("数据插入失败:", err) 67 # 发生错误数据库回滚 68 db.rollback() 69 else: 70 print("数据插入成功") 71 print("执行execute()方法后影响的行数为:%d" % (cursor.rowcount)) 72 finally: 73 print("adddata_mysqlDB函数执行完毕") 74 75 76 # 关闭数据库连接 77 def close_mysqlDB(): 78 print("close_mysqlDB()函数开始执行") 79 try: 80 db.close() 81 except Exception as err: 82 print("数据库关闭失败", err) 83 else: 84 print("数据库关闭成功") 85 finally: 86 print("close_mysqlDB()函数执行完毕") 87 88 def timejiexi(time): 89 xq=time[0:3] 90 yf=time[4:7] 91 rq=time[8:10] 92 sj = time[11:19] 93 year=time[-4:] 94 dict1 = {'Mon': "周一", 'Tue': "周二", 'Wed': "周三" , 'Thu': "周四" , 'Fri': "周五" , 'Sat': "周六" , 'Sun': "周日" }; 95 dict2 = {'Jan':'1', 'Feb': '2', 'Mar': '3' , 'Apr':'4' , 'May': '5' , 'Jun': '6' , 'Jul': '7', 'Aug': '8' , 'Sep': '9' , 'Oct':'10' , 'Nov': '11' , 'Dec': '12' }; 96 xq=dict1[xq] 97 yf=dict2[yf] 98 global newtime 99 newtime=year+'/'+yf+'/'+rq+'/'+sj+'/'+xq 100 101 102 def urljiexi(url): 103 part=url[29:] 104 print(part) 105 rr = re.compile(".+\\\\") 106 statuslist=rr.findall(part) # 查找所有实量 107 global status 108 status = statuslist[0][:-1] 109 110 rr = re.compile("\\\\.+") 111 itemlist=rr.findall(part) # 查找所有实量 112 global item 113 item=itemlist[0][1:] 114 115 def main(): 116 for url in glob.glob(r'C:\Users\U\Desktop\workspace\*\*'): 117 print(url) 118 urljiexi(url) 119 print(status) 120 print (item) 121 starttime=time.ctime(os.stat(url).st_ctime) # 文件的创建时间 122 updatetime=time.ctime(os.stat(url).st_mtime) # 文件的修改时间 123 timejiexi(starttime) 124 starttime=newtime 125 timejiexi(updatetime) 126 updatetime=newtime 127 print(starttime) 128 print(updatetime) 129 adddata_mysqlDB(status, item, starttime, updatetime) 130 131 if __name__ == '__main__': 132 setup_mysqlDB() 133 createtable_mysqlDB() 134 main() 135 close_mysqlDB()

运行结果:

猜你喜欢

转载自www.cnblogs.com/uasier/p/9258791.html