This commit is contained in:
hkyc
2025-03-31 09:55:54 +08:00
parent 4ef08d7775
commit 4759813f6e
32 changed files with 3879 additions and 0 deletions

60
add_extracted_field.py Normal file
View File

@@ -0,0 +1,60 @@
import asyncio
import sys
from loguru import logger
from core.config import Config
from core.database import DatabaseManager
from core.logger import setup_logger
async def add_extracted_field():
# 初始化
config = Config.from_yaml()
logger = setup_logger(config)
db_manager = DatabaseManager(config)
try:
await db_manager.initialize()
# 检查字段是否存在
async with db_manager.get_connection() as conn:
# SQLite中查询表结构的方法
cursor = await conn.execute("PRAGMA table_info(email_accounts)")
columns = await cursor.fetchall()
# 检查是否已存在extracted字段
extracted_exists = any(column[1] == 'extracted' for column in columns)
if extracted_exists:
logger.info("extracted字段已存在无需添加")
return
# 添加extracted字段
logger.info("正在添加extracted字段...")
await conn.execute("""
ALTER TABLE email_accounts
ADD COLUMN extracted BOOLEAN DEFAULT 0
""")
await conn.commit()
logger.success("成功添加extracted字段")
# 初始化字段值
logger.info("正在初始化extracted字段值...")
await conn.execute("""
UPDATE email_accounts
SET extracted = 0
""")
await conn.commit()
logger.success("初始化完成所有账号的extracted字段已设置为0")
except Exception as e:
logger.error(f"添加字段时出错: {str(e)}")
finally:
await db_manager.cleanup()
if __name__ == "__main__":
asyncio.run(add_extracted_field())