feature: add MIEM employees parser service with admin UI and MCP

This commit is contained in:
Anton
2026-04-28 16:20:51 +03:00
parent 6480f31e8f
commit d512580960
29 changed files with 1883 additions and 0 deletions

25
app/config.py Normal file
View File

@@ -0,0 +1,25 @@
from functools import lru_cache
from pydantic import Field
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
model_config = SettingsConfigDict(env_file=".env", env_file_encoding="utf-8", extra="ignore")
database_url: str = "sqlite:///./miem_workers.db"
source_url: str = "https://miem.hse.ru/persons"
crawl_cron: str = "0 3 * * 1"
crawl_limit: int | None = None
request_timeout: int = 30
request_delay_seconds: float = 1.0
parser_use_playwright: bool = False
admin_username: str = "admin"
admin_password: str = "admin"
session_secret: str = Field(default="dev-session-secret", min_length=8)
mcp_token: str = "dev-mcp-token"
@lru_cache
def get_settings() -> Settings:
return Settings()