Python定时读取文件夹内新增内容上传数据库
时间: 2023-05-13 11:05:35 浏览: 136
python实现读取文件夹下所有excel文件内容上传MySQL数据库,并附带生成log文件,同时上传成功之后清空文件夹
可以使用Python的watchdog库来监控文件夹内的新增内容,然后使用Python的pymysql库连接数据库并将新增内容上传到数据库中。以下是一个简单的示例代码:
```python
import time
import pymysql
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class MyHandler(FileSystemEventHandler):
def on_created(self, event):
if not event.is_directory:
# 新增文件
filename = event.src_path
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', database='test')
cursor = conn.cursor()
# 将文件名插入数据库
cursor.execute("INSERT INTO files (filename) VALUES (%s)", filename)
conn.commit()
cursor.close()
conn.close()
if __name__ == "__main__":
event_handler = MyHandler()
observer = Observer()
observer.schedule(event_handler, path='/path/to/folder', recursive=False)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
```
其中,`MyHandler`类继承自`FileSystemEventHandler`,重写了`on_created`方法,在新增文件时将文件名插入数据库。`observer`对象使用`watchdog`库来监控文件夹内的新增内容。`pymysql`库用于连接数据库并插入数据。
阅读全文