cnki-download
Download a paper PDF/CAJ from CNKI. Requires user to be logged in. Use when user wants to download a specific paper.
By cookjohn · 711 installs
npx skills add cookjohn/cnki-skills --skill cnki-download
Source repository · Upstream listing
CNKI Paper Download (文献下载)
Prerequisites
User must be logged in to CNKI with download permissions.
Arguments
$ARGUMENTS is optionally a paper detail URL. If blank, uses current page.
Steps
1. Navigate (if URL provided)
If URL provided: use navigate page to go to the URL directly (no wait for needed — Step 2 handles waiting).
Important : Always use navigate page instead of clicking links on the search results page. Clicking opens a new tab and wastes 3 extra tool calls ( list pages + select page + take snapshot ).
2. Check status and download (single async evaluate script)
Replace FORMAT with "pdf" or "caj" :
3. Report
Based on JS result:
status: downloading → "PDF 下载已触发:{title}。请在 Chrome 下载管理器中查看。"
error: not logged in → tell user to log in
error: captcha → tell user to solve captcha
Tool calls: 1–2 (navigate page if URL + evaluate script)
Verified selectors
Element Selector Notes
PDF download pdfDown <a inside li.btn dlpdf
CAJ download cajDown <a inside li.btn dlcaj
Download area .download btns parent <div
Not logged in .downloadlink.icon notlogged
Title .brief h1 strip trailing "网络首发"
Captcha detection
Check tcaptcha transform dy element's getBoundingClientRect().top = 0 .
Only active when top = 0 (visible). Pre loaded SDK sits at top: 1000000px .