一键导入
artistcafe
Per-source rules for ArtistcafeScraper (artistcafe.jp)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Per-source rules for ArtistcafeScraper (artistcafe.jp)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Planning principles, model selection, and scope rules for the Architect agent
Implementation rules for database migrations, Python scrapers, and Next.js web for the Engineer agent
BaseScraper contract, field rules, and Peatix-specific conventions for the Scraper Expert agent
Scraper test execution rules, output validation criteria, and report format for the Tester agent
BaseScraper contract, field rules, and Peatix-specific conventions for the Scraper Expert agent
Platform rules and field mappings for the 誠品生活日本橋 (eslite spectrum Nihonbashi) scraper
| name | artistcafe |
| description | Per-source rules for ArtistcafeScraper (artistcafe.jp) |
| applyTo | scraper/sources/artistcafe.py |
| Item | Value |
|---|---|
| Site URL | https://artistcafe.jp/event/ |
| Rendering | Server-side HTML (Playwright used for JS-heavy listing) |
| Auth | None |
| Rate limit | None observed |
| Source name | artistcafe |
| Source ID format | artistcafe_{wp_post_id} (e.g. artistcafe_2340) |
| Location | Fukuoka, Japan (Artist Cafe Fukuoka) |
| Event field | Selector / source |
|---|---|
name_ja | a.text-article-list-title (listing card) |
start_date | p.text-article-list-date — regex (\d{4})\.(\d{1,2})\.(\d{1,2}) |
source_url | Detail page href from a.text-article-list-title |
source_id | artistcafe_{n} from URL /event/(\d+) |
raw_description | <article> on detail page; fallback <body> |
CRITICAL: artistcafe.jp ignores
?keyword=URL parameters entirely. Keyword filtering MUST be done in-scraper after visiting each detail page.
?keyword=台湾 returns the same 12 results as no keyword at all — verified 2026-05-05_is_taiwan(title + description) before creating an Event台湾, Taiwan, 台灣, 臺灣YYYY.MM.DD format (e.g. 2026.04.18)(\d{4})\.(\d{1,2})\.(\d{1,2}) — handles single-digit months/daysstart_date is midnight of the event datearticle selector on detail page, NOT body — body.inner_text() captures
navigation headers (OPEN 11:00 - 19:00 アクセス アーティスト相談 …) that pollute raw_descriptionbody only if article element not found (count == 0)| Symptom | Cause | Fix |
|---|---|---|
| Non-Taiwan events in DB | ?keyword= ignored by site | Add/verify _is_taiwan() check in _extract_cards |
raw_description is nav text | body.inner_text() instead of article | Use DETAIL_CONTENT_SELECTOR = "article" |
| 0 events found | li.article-list selector broken | Check site HTML; they may have redesigned |
| Page 2+ yields 0 events | Site only has 1 page of events (12 cards) | Normal — MAX_PAGES=5 but stops at first empty page |
artistcafe_2359_sub1) were manually created in DB — these are NOT produced by the scraper and will remain deactivated unless created manually again