Podcast Radar CN
Use this skill when the user wants to discover, compare, or curate Chinese podcasts or podcast episodes based on current ranking data.
This skill is strongest at:
- listener discovery
- creator benchmarking
- curation and distribution research
It is not a general web scraping skill. Its default posture is ranking-first and title-first.
Skill Root Rule
Treat the directory containing this SKILL.md as the skill root.
- In OpenClaw, prefer
{baseDir}when calling files inside this skill. - In other hosts or manual installs, use the same paths relative to the skill root, for example
scripts/fetch_xyz_rank.py. - Examples below use
python3; if the host only exposespython, swap the binary name.
Quick Start
Choose one of the four ranking lists:
hot-episodeshot-podcastsnew-podcastsnew-episodes
Fetch a candidate set first:
python3 {baseDir}/scripts/fetch_xyz_rank.py --list hot-episodes --limit 20
Filter by genre, freshness, or query when the user already has a direction:
python3 {baseDir}/scripts/fetch_xyz_rank.py \
--list new-episodes \
--limit 12 \
--genre 社会与文化 \
--freshness-days-max 30
If and only if you truly need extra context for a small set of candidates, enrich a few Xiaoyuzhou URLs:
python3 {baseDir}/scripts/enrich_xiaoyuzhou.py \
--episode-url https://www.xiaoyuzhoufm.com/episode/69bf524c2d318777c9169361
Workflow
- Classify the request as one of:
- listener discovery
- creator benchmarking
- curation/distribution research
- Interpret the user's wording before choosing the list:
- if the user says
热门播客,最近播客,值得听的播客, or similar casual Chinese phrasing, default to episode-level results - if the user explicitly asks for
播客频道,播客栏目,节目主页,show-level,频道级, or wants a creator benchmark list, use podcast-level results
- if the user says
- Pick the most relevant ranking list.
- default listener-discovery wording usually maps to
hot-episodesornew-episodes - explicit channel / show / benchmark wording usually maps to
hot-podcastsornew-podcasts
- default listener-discovery wording usually maps to
- Fetch enough candidates to support filtering; do not stop at the first 5 unless the user asked for 5.
- Use ranking fields and title signals first.
- Only if the answer would otherwise be weak, enrich a small set of Xiaoyuzhou pages.
- Return a task-shaped result, not raw JSON.
Query Interpretation Rule
In Chinese product usage, users often say 播客 when they really mean 最近值得点开的内容.
Default behavior:
热门播客最近热门播客最近值得听的播客推荐几个热门播客
Treat these as requests for episode-level recommendations unless the wording clearly asks for show/channel-level objects.
Switch to podcast-level results only when the user explicitly asks for things like:
播客频道播客栏目播客节目主页频道级榜单栏目级榜单- show-level benchmark or channel list
When in doubt:
- listener-oriented wording -> episode-first
- benchmark / channel / host / show-portfolio wording -> podcast-first
Title-First Rule
Before reaching for Xiaoyuzhou pages, inspect:
titlepodcastName/nameprimaryGenreNamerankplayCount/avgPlayCountcommentCount/avgCommentCount- freshness fields
The fetch script also extracts title signals such as:
- episode markers like
S8E9,EP03,Vol132 - guest hints like
A×B,对话某某 - format hints like
对谈,访谈,复盘,盘点 - topic keywords inferred from the title
If those signals are enough, do not enrich.
Read references/title-signals.md when you need examples or interpretation guidance.
Xiaoyuzhou Enrichment Rule
Xiaoyuzhou enrichment is allowed only for narrow, necessary follow-up work.
Hard rules:
- never bulk-enrich by default
- never enrich just to complete every field
- never enrich more than 20 URLs in one run
- if a request implies short-window bulk access, refuse enrichment and stay at ranking level
Use enrichment when:
- a short list needs better recommendation reasons
- you need the real Xiaoyuzhou
pidfrom an episode page - you need a podcast brief or episode description for a handful of finalists
The enrichment script enforces the cap for you.
Output Modes
Use one of these result shapes:
- Listener Discovery: what episode is worth hearing now, and why
- Creator Benchmarking: which shows are worth studying or comparing against
- Curation and Distribution: which shows or episodes are worth packaging, recommending, or developing into downstream ideas
Read references/output-modes.md when you need concrete formatting guidance.
Data Caveats
- 中文播客榜 is weekly, not minute-by-minute real time
- the data is not full-platform coverage
primaryGenreNameis often missing on new listsopenRate/avgOpenRatecan exceed1; treat these as internal ranking signals, not literal rates
Read references/api.md when you need field notes or endpoint details.
Scripts
scripts/fetch_xyz_rank.pyPurpose: fetch and normalize ranking data, with basic filters and title-signal extractionscripts/enrich_xiaoyuzhou.pyPurpose: enrich a small set of Xiaoyuzhou pages with brief/description/shownotes context, under a strict cap
What To Avoid
- dumping raw fields without synthesis
- pretending the ranking is a real-time universal truth
- using Xiaoyuzhou enrichment for large-page traversal
- over-explaining
openRateas if it were a clean probability