| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- from pydantic_settings import BaseSettings, SettingsConfigDict
- class DatabaseConfig(BaseSettings):
- """数据库配置基类"""
- host: str
- port: int = 3306
- user: str
- password: str
- db: str
- charset: str = "utf8mb4"
- minsize: int = 5
- maxsize: int = 20
- model_config = SettingsConfigDict(
- env_prefix="", case_sensitive=False, extra="ignore"
- )
- def to_dict(self) -> dict:
- """转换为字典格式,用于兼容旧代码"""
- return {
- "host": self.host,
- "port": self.port,
- "user": self.user,
- "password": self.password,
- "db": self.db,
- "charset": self.charset,
- "minsize": self.minsize,
- "maxsize": self.maxsize,
- }
- class AigcDatabaseConfig(DatabaseConfig):
- """AIGC 数据库配置"""
- host: str = "rm-t4na9qj85v7790tf84o.mysql.singapore.rds.aliyuncs.com"
- user: str = "crawler_admin"
- password: str = "cyber#crawler_2023"
- db: str = "aigc-admin-prod"
- model_config = SettingsConfigDict(
- env_prefix="AIGC_DB_", env_file=".env", case_sensitive=False, extra="ignore"
- )
- class LongVideoDatabaseConfig(DatabaseConfig):
- """长视频数据库配置"""
- host: str = "rr-bp1x9785e8h5452bi157.mysql.rds.aliyuncs.com"
- user: str = "wx2016_longvideo"
- password: str = "wx2016_longvideoP@assword1234"
- db: str = "longvideo"
- model_config = SettingsConfigDict(
- env_prefix="LONG_VIDEO_DB_",
- env_file=".env",
- case_sensitive=False,
- extra="ignore",
- )
- class LongArticlesDatabaseConfig(DatabaseConfig):
- """长文数据库配置"""
- host: str = "rm-bp14529nwwcw75yr1ko.mysql.rds.aliyuncs.com"
- user: str = "changwen_admin"
- password: str = "changwen@123456"
- db: str = "long_articles"
- model_config = SettingsConfigDict(
- env_prefix="LONG_ARTICLES_DB_",
- env_file=".env",
- case_sensitive=False,
- extra="ignore",
- )
- class PiaoquanCrawlerDatabaseConfig(DatabaseConfig):
- """票圈爬虫数据库配置"""
- host: str = "rm-bp1159bu17li9hi94.mysql.rds.aliyuncs.com"
- user: str = "crawler"
- password: str = "crawler123456@"
- db: str = "piaoquan-crawler"
- model_config = SettingsConfigDict(
- env_prefix="PIAOQUAN_CRAWLER_DB_",
- env_file=".env",
- case_sensitive=False,
- extra="ignore",
- )
- class GrowthDatabaseConfig(DatabaseConfig):
- """增长数据库配置"""
- host: str = "rm-bp17q95335a99272b.mysql.rds.aliyuncs.com"
- user: str = "crawler"
- password: str = "crawler123456@"
- db: str = "growth"
- model_config = SettingsConfigDict(
- env_prefix="GROWTH_DB_", env_file=".env", case_sensitive=False, extra="ignore"
- )
|