# 清新区政府门户「政务公开」区
# https://www.qingxin.gov.cn/zwgk/
#
# 走 legacy CSS scrape 路径（cms_adapter 留空，pipeline 通过 yaml_path 读这里）。
# 注：清新区政府主站既有这套传统 HTML 平台，也有部分栏目走清远云 gkmlpt API。
# 那部分独立登记在 site_code=qingxin（cms_adapter=gkmlpt）下；本 yaml 只覆盖
# 政务公开 zwgk 这套传统 HTML 列表页。两个 site 行域名相同但范式不同。
#
# DOM 结构（2026-04-27 实测，所有 zwgk 子栏目共用）：
#   列表: <div class="gl-item-ctn">
#           <a class="gl-item" href="...post_X.html">
#             <div class="title">…</div>
#             <div class="time">YYYY-MM-DD</div>
#           </a> × 20
#         </div>
#         分页: index_2.html / index_3.html …（pipeline 暂不支持，仅抓首页）
#
#   详情: <div class="com-xl">
#           <div class="header"><div class="title">标题</div>
#             <div class="interation">
#               <span class="desc">发布日期：YYYY-MM-DD HH:MM</span>
#               <span class="desc">文章来源：…</span>
#             </div>
#           </div>
#           <div class="xl-content">正文…<a class="nfw-cms-attachment">附件</a></div>
#         </div>
#
# 设计要点：所有子栏目共用同一套 CMS 模板 → 用 default_column 兜底。
# 这样从 admin UI 通过 discover-html + bulk-create 加任意新栏目都不用改这个 yaml,
# pipeline 在 get_column(unknown_id) 时会自动 synthesize 一个继承 default_column
# 的 ColumnConfig，list_url 由 crawl_target.entry_url 提供。
# 当个别栏目 DOM 不同时，再在 columns: 列表里显式覆盖。

site_id: qingxin_zwgk
site_name: 清新区·政务公开
base_url: https://www.qingxin.gov.cn
default_strategy: httpx
concurrency: 1
interval_sec: 10
enabled: true
respect_robots: true

# 任何未在 columns: 中显式列出的 column_id 都自动用这套
default_column:
  list_selector:
    row: ".gl-item-ctn a.gl-item"
    href: "::attr(href)"           # 行就是 <a>，直接取它的 href
    title: ".title::text"
    date: ".time::text"

  pagination:
    type: path_pattern
    pattern: "index_{page}.html"
    start: 2
    max_pages: 30

  detail:
    title: "div.com-xl div.title::text, h1::text"
    publish_time: "div.interation span.desc::text"
    source: "div.interation span.desc:nth-of-type(2)::text"
    content: "div.xl-content"
    attachment_css: >-
      a.nfw-cms-attachment, a[href*='/attachment/'],
      a[href$='.pdf'], a[href$='.doc'], a[href$='.docx'],
      a[href$='.xls'], a[href$='.xlsx'], a[href$='.zip'], a[href$='.wps']

# 显式覆盖项留空 — 任何新栏目走 default_column。某个栏目 DOM 特殊时往这里加。
columns: []
