settings.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. """项目配置:从 .env 读取数据库与采集参数。"""
  2. from pathlib import Path
  3. from dotenv import load_dotenv
  4. import os
  5. ROOT_DIR = Path(__file__).resolve().parent.parent
  6. load_dotenv(ROOT_DIR / ".env")
  7. DB_HOST = os.getenv("DB_HOST", "localhost")
  8. DB_PORT = int(os.getenv("DB_PORT", "3306"))
  9. DB_USER = os.getenv("DB_USER", "root")
  10. DB_PASSWORD = os.getenv("DB_PASSWORD", "")
  11. DB_NAME = os.getenv("DB_NAME", "acquirelead")
  12. SEARCH_KEYWORD = os.getenv("SEARCH_KEYWORD", "怎么学好英语?")
  13. COMMENT_LIMIT = int(os.getenv("COMMENT_LIMIT", "10"))
  14. VIDEO_LIMIT = int(os.getenv("VIDEO_LIMIT", "5"))
  15. BROWSER_DATA_DIR = ROOT_DIR / "browser_data" / "douyin"
  16. DOUYIN_URL = "https://www.douyin.com"
  17. # leads.status
  18. LEAD_STATUS_COLLECTED = 1
  19. # 表名前缀(迁移后库表为 douyin_videos / douyin_leads 等)
  20. TABLE_PREFIX = os.getenv("TABLE_PREFIX", "douyin_")
  21. def database_url() -> str:
  22. from urllib.parse import quote_plus
  23. password = quote_plus(DB_PASSWORD)
  24. return (
  25. f"mysql+pymysql://{DB_USER}:{password}"
  26. f"@{DB_HOST}:{DB_PORT}/{DB_NAME}?charset=utf8mb4"
  27. )