# 广东省政府·文件库 (gd.gov.cn/zwgk/wjk)
#
# 实测（2026-04-28）：
#   - 入口 /zwgk/wjk/ 是带 6 个 tab 的汇总快照（每 tab 取头若干条），
#     无翻页 — 内容是 /zwgk/wjk/qbwj/ 第 1 页的 superset。
#   - /zwgk/wjk/qbwj/ 是真正的"全部文件"长尾入口，每页 20 条，
#     index_2.html ... index_248.html，共 ~4960 条历史可回溯到 1999。
#     列表两个版面布局不同（root 用 span.time/wenhao，qbwj 用
#     span.date/wh + div.viewList 容器）。
#   - 详情页全部 trs-cms 静态渲染，div.content 内 5KB+ 正文，
#     meta[ArticleTitle/PubDate/ContentSource] 齐全。
#   - 加 default_column 给 admin UI 的 discover-html 用，主目标走
#     paginated qbwj 列。

site_id: gd_wjk
site_name: 广东省政府·文件库
base_url: https://www.gd.gov.cn
default_strategy: httpx
concurrency: 1
interval_sec: 120
enabled: true
respect_robots: true

default_column:
  list_selector:
    row: "div.viewList ul li"
    href: "span.name a::attr(href)"
    title: "span.name a::attr(title), span.name a::text"
    date: "span.date::text"
  pagination:
    type: none
  detail:
    title: "meta[name='ArticleTitle']::attr(content), title::text"
    publish_time: "meta[name='PubDate']::attr(content)"
    source: "meta[name='ContentSource']::attr(content)"
    content: "div.zw, div.TRS_Editor, div.TRS_UEDITOR, div.content"
    # attachment_css is applied to the already-narrowed content_root
    # (div.zw / div.TRS_Editor / ...). DON'T prefix with the parent
    # selector — the search is relative to the picked content node.
    attachment_css: |
      a[href$='.pdf'], a[href$='.doc'], a[href$='.docx'],
      a[href$='.xls'], a[href$='.xlsx'], a[href$='.zip'],
      a[href$='.wps'], a[href$='.rar']

columns:
  # 主入口：全部文件（带翻页），覆盖 1999 至今 ~4960 条
  - column_id: qbwj
    name: 全部文件
    category: 政务公开
    list_url: https://www.gd.gov.cn/zwgk/wjk/qbwj/
    list_selector:
      row: "div.viewList ul li"
      href: "span.name a::attr(href)"
      title: "span.name a::attr(title), span.name a::text"
      date: "span.date::text"
    pagination:
      type: path_pattern
      pattern: "index_{page}.html"
      start: 2
      max_pages: 250   # 全量回溯历史（约 1999 至今）；跑完后可改回 5 做日常增量
    crawl_order:
      mode: random_batch
      batch_pages: 3
    detail:
      title: "meta[name='ArticleTitle']::attr(content), title::text"
      publish_time: "meta[name='PubDate']::attr(content)"
      source: "meta[name='ContentSource']::attr(content)"
      content: "div.zw, div.TRS_Editor, div.TRS_UEDITOR, div.content"
      attachment_css: |
        a[href$='.pdf'], a[href$='.doc'], a[href$='.docx'],
        a[href$='.xls'], a[href$='.xlsx'], a[href$='.zip'],
        a[href$='.wps'], a[href$='.rar']
    schedule: "0 8 * * *"   # 每天早 8 点
    enabled: true
