← Back to Skills Marketplace
volumexxx

AHTV PK to Xunlei

by Volumexxx · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
117
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install ahtv-pk-to-xunlei
Description
Find 安徽网络电视台《快乐无敌大PK》 full-episode pages from a user-provided date expression, extract each episode's real video URL, and save the episodes into 迅雷云盘. Use th...
README (SKILL.md)

AHTV PK To Xunlei

Use this skill only for 《快乐无敌大PK》 on 安徽网络电视台. Treat all unspecified years as 2026.

Quick Start

  1. Run the date parser first. Windows:
    python "{baseDir}\scripts\parse_date_expr.py" --date-expr "\x3Cdate_expr>"
    
    If python is unavailable, retry with:
    py -3 "{baseDir}\scripts\parse_date_expr.py" --date-expr "\x3Cdate_expr>"
    
  2. Run the resolver on the same expression.
    python "{baseDir}\scripts\resolve_episodes.py" --date-expr "\x3Cdate_expr>"
    
  3. Use the resolver JSON as the source of truth for expanded_dates, episode_url, video_url, and target_filename.

Supported Date Expressions

  • Single date: 3月5日, 2026-03-05
  • Multi-date list: 3月5、6、7、8日, 3月5日,3月6日,3月7日
  • Closed range: 3月5-10日, 3月5日至3月10日, 2026-03-05~2026-03-10
  • Open range: 3月5日之后, 3月5日以后

Interpretation rules:

  • Default missing years to 2026
  • For 3月5、6、7、8日, inherit month and year from the first date
  • For 3月5-10日, inherit month and year for the end date from the start date
  • For 3月5日之后 and 3月5日以后, exclude the day itself and start from 2026-03-06
  • For open ranges, stop at the latest currently discoverable 快乐无敌大PK episode date on 安徽网络电视台

Reject these requests as unsupported instead of guessing:

  • , 以来, 前后, 本周, 最近几天
  • Cross-year shorthand without an explicit year
  • Requests that mix 快乐无敌大PK with a different program

Resolution Workflow

Run the resolver before opening 迅雷云盘. The resolver already does the deterministic parts:

  • Search https://www.ahtv.cn/search for 快乐无敌大PK
  • Filter candidates to https://www.ahtv.cn/pindao/ahzh/pk/split/...
  • Match by the episode date embedded in the title, not by the search result publish time
  • Prefer titles containing 整期
  • Cross-check ambiguous dates against https://www.ahtv.cn/pindao/ahzh/pk and its paginated index pages
  • Extract the real media URL from the single-episode page hidden input #m3u8

Treat the resolver output like this:

  • status=ready: proceed to 迅雷云盘
  • status=not-found: record the failure and continue with the next date
  • status=ambiguous: record the failure and continue with the next date
  • status=video-url-missing: record the failure and continue with the next date
  • status=error: record the failure and continue with the next date

迅雷云盘 Workflow

Process dates one by one and continue even if one date fails.

For every resolver item with status=ready:

  1. Open https://pan.xunlei.com/.
  2. If the user is not logged in, use $sms-login-dom-first to complete 迅雷云盘 login with phone number plus SMS code, then return to the cloud drive page.
  3. Search the whole cloud drive for the exact target_filename.
  4. If an exact same file already exists anywhere in 迅雷云盘, mark the item as skipped-existing and do not add it again.
  5. If it does not exist, ensure the folder path /快乐无敌大PK/2026 exists.
  6. Use 迅雷云盘's link-based add flow. UI labels can vary, so look for controls such as 链接添加, 添加链接, 云添加, 添加任务, or a plus menu with a chain/link icon.
  7. Paste the resolver video_url exactly as returned.
  8. Save into /快乐无敌大PK/2026 if the dialog lets you choose the destination. If it saves elsewhere first, move it into /快乐无敌大PK/2026 immediately after creation.
  9. Wait until the file becomes visible in the target folder.
  10. If 迅雷 keeps the source file name, rename it to target_filename.

Do not download to local disk as a fallback in v1. Only use 迅雷云盘 link add / cloud add.

Naming Rules

  • Basename format: 快乐无敌大PK.2026.S02E{MMDD}
  • Final filename format: 快乐无敌大PK.2026.S02E{MMDD}.mp4
  • Example: 快乐无敌大PK.2026.S02E0315.mp4

Use the resolver's target_filename directly. Do not invent an alternate naming scheme.

Final Output Format

Return one compact JSON-like summary in Markdown. Include these top-level fields:

  • input_expr
  • expanded_dates
  • summary
  • items

summary must include:

  • total
  • added
  • skipped_existing
  • not_found
  • failed

Each item must include:

  • date
  • status
  • episode_url
  • video_url
  • target_filename
  • xunlei_path
  • message

Status values for the final answer:

  • added-and-renamed
  • skipped-existing
  • not-found
  • add-failed

Map resolver failures into the final response like this:

  • not-found stays not-found
  • ambiguous, video-url-missing, and error become add-failed

Notes

  • Prefer the resolver scripts over ad-hoc parsing in the model.
  • Treat the site structure as authoritative as of the current run. If the resolver fails because the site changed, report the failure clearly instead of fabricating URLs.
  • Keep the browser workflow deterministic: exact filename search first, then add, then rename if needed.
Usage Guidance
This skill appears to do what it says: it parses date expressions, scrapes episode pages on ahtv.cn to extract video URLs, and automates adding those links to your Xunlei cloud drive. Before installing/run: (1) review the included Python scripts if you want extra assurance (they perform HTTP requests to ahtv.cn and extract hidden inputs for media URLs); (2) be aware that the workflow requires completing an SMS-based login to your Xunlei account via an automation helper ($sms-login-dom-first) — that means your phone number and SMS codes will be handled by the login automation (ensure you trust that helper and the environment); (3) run the scripts in an environment you control (network-restricted or ephemeral VM) if you want to limit exposure. If you want extra assurance, ask for the full ahtv_pk_lib.py content to be reviewed line-by-line (you were shown a truncated file in the manifest).
Capability Analysis
Type: OpenClaw Skill Name: ahtv-pk-to-xunlei Version: 1.0.0 The skill bundle is designed to automate the retrieval of TV episode links from the Anhui Network TV website (ahtv.cn) and save them to Xunlei Cloud Drive. The Python scripts (ahtv_pk_lib.py, parse_date_expr.py, resolve_episodes.py) use standard libraries to parse date expressions and scrape HTML content using regex. The code includes security best practices such as allowlisting the scraping domain (ALLOWED_EPISODE_PREFIX) and lacks any indicators of malicious behavior, data exfiltration, or harmful prompt injection.
Capability Assessment
Purpose & Capability
Name/description match the included scripts and runtime steps: resolver scripts query ahtv.cn for episodes and the SKILL.md directs adding discovered video links to pan.xunlei.com. No unrelated credentials, binaries, or external services are requested.
Instruction Scope
Instructions stay on-task (parse date expressions, resolve episode pages, and use Xunlei's link-add flow). They rely on a browser automation/login helper ($sms-login-dom-first) to perform SMS-based login to Xunlei — this means the agent or an auxiliary skill will handle phone/SMS interaction. There is no instruction to read local system files or exfiltrate data, but the SMS-login step implies handling a user's phone number and SMS codes via another skill or automation, which the user should be aware of.
Install Mechanism
No install spec; the package is instruction-first with Python scripts included. That is low-risk compared to downloading/executing remote archives. The code relies on standard library urllib/html parsing; no external package downloads are declared.
Credentials
The skill declares no required environment variables or credentials, which is appropriate. However, the workflow depends on logging into a user Xunlei account via SMS — the skill expects an interactive or delegated SMS login flow rather than stored credentials. Users should note that phone numbers and SMS codes will be handled during the login step by whatever automation (e.g., $sms-login-dom-first) the agent uses.
Persistence & Privilege
The skill is not always-enabled and does not request system-wide persistence. It will run local Python scripts and make outbound HTTP requests to ahtv.cn; no modification of other skills or global agent settings is indicated.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install ahtv-pk-to-xunlei
  3. After installation, invoke the skill by name or use /ahtv-pk-to-xunlei
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release
Metadata
Slug ahtv-pk-to-xunlei
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is AHTV PK to Xunlei?

Find 安徽网络电视台《快乐无敌大PK》 full-episode pages from a user-provided date expression, extract each episode's real video URL, and save the episodes into 迅雷云盘. Use th... It is an AI Agent Skill for Claude Code / OpenClaw, with 117 downloads so far.

How do I install AHTV PK to Xunlei?

Run "/install ahtv-pk-to-xunlei" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is AHTV PK to Xunlei free?

Yes, AHTV PK to Xunlei is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does AHTV PK to Xunlei support?

AHTV PK to Xunlei is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created AHTV PK to Xunlei?

It is built and maintained by Volumexxx (@volumexxx); the current version is v1.0.0.

💬 Comments