Current Path : /home/striker/ |
Current File : //home/striker/godir.py |
import os import time import sqlite3 from datetime import datetime def create_database(): conn = sqlite3.connect('files.db') cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS files (id INTEGER PRIMARY KEY AUTOINCREMENT, path TEXT, name TEXT, content TEXT, cdate TEXT,mdate TEXT)''') conn.commit() conn.close() def search_files(directory): conn = sqlite3.connect('files.db') cursor = conn.cursor() for root, dirs, files in os.walk(directory): for file in files: start = time.perf_counter() file_path = os.path.join(root, file) if file.endswith('.php') or file.endswith('.txt'): with open(file_path, 'r') as f: try: content = f.readlines() for line in content: if line != "\n": ctime = os.path.getctime(file_path) mtime = os.path.getmtime(file_path) ctime_obj = datetime.fromtimestamp(ctime) mtime_obj = datetime.fromtimestamp(mtime) cursor.execute('''INSERT INTO files (path, name, content, cdate, mdate) VALUES (?, ?, ?, ?, ?)''', (file_path, file, line, ctime_obj.strftime('%Y-%m-%d %H:%M:%S'), mtime_obj.strftime('%Y-%m-%d %H:%M:%S'))) conn.commit() except: print('BYTE FILE') end = start-time.perf_counter() print(file_path, end) if __name__ == '__main__': directory = 'C:\\' # Текущая директория create_database() search_files(directory)