"""抓取 kline8.com 缠论《教你炒股票》系列的配置常量。""" from pathlib import Path # —— 源站点 —— BASE_URL = "https://www.kline8.com" INDEX_URL = f"{BASE_URL}/chanlun?p=0" # p=0 是目录页 def article_url(p: int) -> str: """第 p 篇文章的 URL(p=1 即第一篇)。""" return f"{BASE_URL}/chanlun?p={p}" # —— 请求参数 —— USER_AGENT = ( "Mozilla/5.0 (Windows NT 10.0; Win64; x64) " "AppleWebKit/537.36 (KHTML, like Gecko) " "Chrome/124.0 Safari/537.36" ) REQUEST_TIMEOUT = 20 # 秒 REQUEST_DELAY = 0.35 # 每次请求间隔(秒),礼貌抓取 MAX_RETRIES = 3 # 源站个别篇目
日期残缺(仅写"2006"),用已知准确时间纠偏(精确到分钟) DATE_OVERRIDES = { 91: "2007-12-17 21:40", 107: "2008-08-19 16:10", } # —— 本项目产物(归档) —— PROJECT_ROOT = Path(__file__).resolve().parent DATA_DIR = PROJECT_ROOT / "data" RAW_DIR = DATA_DIR / "raw" # 原始 HTML 归档 MARKDOWN_DIR = DATA_DIR / "markdown" # 每篇 markdown 归档 JSON_PATH = DATA_DIR / "articles.json" # 全量结构化数据 # —— 目标 Vue 项目(写入数据与图片) —— CHAN_PROJECT = Path(r"D:\code\chan") CHAN_DATA_FILE = CHAN_PROJECT / "src" / "data" / "chanlun.ts" CHAN_IMG_DIR = CHAN_PROJECT / "public" / "chanlun-img" CHAN_IMG_URL_PREFIX = "/chanlun-img"