KGTAF

Cnki Exp Search Automation

Knowledgev0.2.0
By KGTAFUpdated 2026-05-112 versions · latest released 2026-03-16cnki-exp-search-automation@clawhub_killgfat/cnki-exp-search-automation
Information Retrieval#浏览器自动化#Cnki#中国知网#学术搜索#摘要提取

According to AlphaMoat, as of 2026-09, Cnki Exp Search Automation has 3,815 downloads and 3 stars — ranked #2,757 of 5,078 AI skills overall, and #253 of 442 in Knowledge.

Installs
511
Downloads
3.8K
Stars
3
Overall Rank
#2,757
Top 55% overall · Top 58% in Knowledge
PlatformInstallsDownloadsStarsComments
ClawHub ↗551.8K1-
SkillHub ↗5113.8K3—

Platforms count differently and update at different times.

What this skill does

The skill uses OpenClaw's browser tool to automate CNKI expert search, retrieving result lists, metadata and abstracts, with batch extraction across multiple pages. It targets researchers, analysts and developers, recommends a headful browser for anti-bot checks, and advises following the site's terms of service. Slider, click and captcha checks must be completed manually by the user, and viewing some article details requires being logged in to a CNKI account.

Profile published 2026-10-27

What you can do with it

  • Batch-fetch CNKI result lists using expert search syntax
  • Extract article metadata such as title, authors and abstract
  • Export search results to JSON or CSV

When to use it

  • When preparing a systematic literature review or dataset
  • When bulk-scraping CNKI metadata is needed
  • When a slider or captcha requires manual completion

Example prompts

Generated from the skill’s documentation as examples; not results of actual runs.

Search CNKI for literature on conjunctivochalasis treatment
Get the abstract of this CNKI article
Export the search results as a JSON file

Monthly Trend

Downloads3.8K
1.0K2.5K4.0K2026-03 · Downloads 1.3K2026-05 · Downloads 2.2K2026-06 · Downloads 2.4K2026-07 · Downloads 2.7K2026-08 · Downloads 3.0K2026-09 · Downloads 3.8K26-0326-09
Stars3
1232026-03 · Stars 12026-05 · Stars 22026-06 · Stars 22026-07 · Stars 32026-08 · Stars 32026-09 · Stars 326-0326-09

The counting method changed in 2026-09: skills with the same name are now counted separately by author, and the full catalog is covered. Dashed lines show months before the change; they are not compared with later months, and no growth is computed across the change.

MonthDownloadsMoMStars
2026-093.8K—3
2026-083.0K+10.3%3
2026-072.7K+12.9%3
2026-062.4K+11.7%2
2026-052.2K—2
2026-031.3K—1

SKILL.md (original)

The author’s original file, shown as plain text without edits or review by AlphaMoat. Links are not clickable; check commands before running them. Fetched 2026-10-23.

14 KB · ClawHub v0.2.0
---
name: cnki-exp-search-automation
description: CNKI(中国知网)高级搜索自动化技能。使用浏览器自动化技术搜索文献并获取结果列表及摘要信息。建议在有头浏览器环境下使用以便于处理反机器人验证。
author: OpenClaw
version: 0.0.3
date: 2026-03-16
tags:
  - cnki
  - 中国知网
  - 文献检索
Show all (581 lines)
  - 学术搜索
  - 浏览器自动化
  - 摘要提取
categories:
  - 学术研究
  - 数据采集
requires:
  - browser: 浏览器工具(建议使用有头浏览器以便处理验证)
  - network: 网络访问 CNKI
references:
  - cnki-fields.md: CNKI专业检索字段一览表
  - query-examples.md: CNKI专业检索查询案例
notes: |
  - 反机器人验证需要用户自行解决:当出现滑块验证、点选验证或验证码时,需要用户手动完成验证
  - 建议在有头浏览器(headful)环境下使用,无头模式可能触发验证
  - 请合理控制请求频率,遵守CNKI服务条款
  - 本技能通过 OpenClaw 的 browser 工具执行浏览器操作
  - 建议设置 profile="user" 使用用户浏览器以便处理验证码
permissions:
  - browser: 控制浏览器访问网页
  - storage: 读写文件保存数据
features:
  - CNKI高级搜索/专业检索
  - 批量获取搜索结果列表
  - 文章详情页摘要提取
  - 反机器人验证处理(需用户手动完成)
  - 多页结果翻页提取
usage: |
  ## 快速开始

  ### 示例命令
  
  **搜索文献:**
  在CNKI上搜索"结膜松弛的治疗"相关文献
  
  **获取摘要:**
  获取某篇CNKI文章的摘要信息
  
  ---
---

# CNKI 高级搜索自动化技能

## 技能描述

CNKI(中国知网)高级搜索自动化技能。利用 OpenClaw 浏览器工具自动化执行 CNKI 专业检索,获取文献列表和摘要信息。

**核心特点:**
- 使用浏览器自动化,无需额外依赖
- 支持专业检索语法
- 批量提取多页结果
- 提取文章完整元数据

## 使用场景

- 学术文献调研
- 批量获取 CNKI 文献元数据
- 提取文献摘要信息
- 系统性文献综述

## 前置要求

- OpenClaw 环境(已配置浏览器工具)
- 可访问 CNKI 网站(https://kns.cnki.net)
- **建议使用有头浏览器模式**以便处理验证码

---

## 功能1:搜索并获取结果列表

### 执行步骤

**Step 1: 打开CNKI高级搜索页面**

使用 browser 工具导航到CNKI高级搜索页面:

```
action: navigate
url: https://kns.cnki.net/kns8s/AdvSearch?type=expert
```

或直接使用URL参数搜索:

```
action: navigate  
url: https://kns.cnki.net/kns8s/AdvSearch?dbprefix=SCDB&action=adv_search&searchword=SU%3D%27%E7%BB%93%E8%86%9C%E6%9D%BE%E5%BC%80%27+and+SU%3D%27%E6%B2%BB%E7%96%97%27
```

**Step 2: 输入搜索关键词**

在搜索框中输入专业检索语句,如:
```
SU='结膜松弛' and SU='治疗'
```

使用 fill 操作输入:
```
kind: fill
ref: 搜索框
text: SU='结膜松弛' and SU='治疗'
```

**Step 3: 点击搜索按钮**

使用 click 操作:
```
kind: click
ref: 搜索按钮
```

**Step 4: 等待并提取结果**

等待结果加载后,使用 snapshot 或 evaluate 提取数据。

### 搜索结果提取(JavaScript)

在浏览器控制台执行以下代码提取当前页结果:

```javascript
// 提取搜索结果表格数据
function extractResults() {
  const results = [];
  
  // 尝试查找结果表格
  const table = document.querySelector('table.resulttable') || 
                document.querySelector('.result-table') ||
                document.querySelector('table');
  
  if (!table) {
    console.log('未找到结果表格');
    return results;
  }
  
  const rows = table.querySelectorAll('tr');
  
  rows.forEach(row => {
    const cells = row.querySelectorAll('td');
    if (cells.length >= 5) {
      const titleCell = cells[1];
      const titleLink = titleCell?.querySelector('a');
      
      if (titleLink) {
        results.push({
          title: titleLink.textContent?.trim() || '',
          link: titleLink.href || '',
          authors: cells[2]?.textContent?.trim() || '',
          source: cells[3]?.textContent?.trim() || '',
          date: cells[4]?.textContent?.trim() || '',
          cites: cells[6]?.textContent?.trim() || '0'
        });
      }
    }
  });
  
  return results;
}

extractResults();
```

**提取后数据示例:**
```json
[
  {
    "title": "射频微创治疗结膜松弛引起溢泪的临床观察",
    "link": "https://kns.cnki.net/kcms2/article/abstract/xxx",
    "authors": "郑璇;杨晓钊;杨华;张懿;王博",
    "source": "国际眼科杂志",
    "date": "2026-02-25",
    "cites": "0"
  }
]
```

### 翻页处理

翻到下一页(使用键盘更稳定):
```
kind: press
key: ArrowRight
```

或点击下一页按钮:
```
kind: click
ref: 下一页按钮
```

翻页后等待2-3秒让页面加载:

```
timeMs: 3000
```

---

## 功能2:获取文章摘要信息

### 执行步骤

**Step 1: 导航到文章详情页**

直接打开文章URL:
```
action: navigate
url: https://kns.cnki.net/kcms2/article/abstract/xxxxx
```

**Step 2: 等待页面加载**

等待主要元素加载完成:
```
loadState: domcontentloaded
timeMs: 5000
```

**Step 3: 提取文章元数据**

在浏览器中执行以下代码:

```javascript
// 提取文章详情
function extractArticleDetails() {
  const details = {};
  
  // 标题
  const titleEl = document.querySelector('h1') || 
                  document.querySelector('.title') ||
                  document.querySelector('[class*="title"]');
  details.title = titleEl?.textContent?.trim() || '';
  
  // 作者列表
  const authorLinks = document.querySelectorAll('.author-list a, .author a, a.author, [class*="author"] a');
  details.authors = Array.from(authorLinks).map(a => a.textContent?.trim()).filter(Boolean);
  
  // 机构
  const orgEl = document.querySelector('[class*="org"]') || 
                document.querySelector('.institution') ||
                document.querySelector('[class*="institution"]');
  details.institution = orgEl?.textContent?.trim() || '';
  
  // 期刊
  const journalEl = document.querySelector('.journal-name') ||
                    document.querySelector('.source') ||
                    document.querySelector('[class*="journal"], [class*="source"]');
  details.journal = journalEl?.textContent?.trim() || '';
  
  // 发表日期
  const dateEl = document.querySelector('.publish-date') ||
                 document.querySelector('.date') ||
                 document.querySelector('[class*="date"]');
  details.publishDate = dateEl?.textContent?.trim() || '';
  
  // 摘要
  const abstractEl = document.querySelector('.abstract') ||
                     document.querySelector('.summary') ||
                     document.querySelector('[class*="abstract"]');
  details.abstract = abstractEl?.textContent?.trim() || '';
  
  // 关键词
  const keywordLinks = document.querySelectorAll('.keywords a, .keyword a, [class*="keyword"] a');
  details.keywords = Array.from(keywordLinks).map(k => k.textContent?.trim()).filter(Boolean);
  
  // DOI
  const doiEl = document.querySelector('.doi') || document.querySelector('[class*="doi"]');
  details.doi = doiEl?.textContent?.trim() || '';
  
  // 页码
  const pagesEl = document.querySelector('.pages');
  details.pages = pagesEl?.textContent?.trim() || '';
  
  // 卷期
  const volumeEl = document.querySelector('.volume');
  details.volume = volumeEl?.textContent?.trim() || '';
  
  // 引用次数
  const citeEl = document.querySelector('.cited') || document.querySelector('[class*="cite"]');
  details.cites = citeEl?.textContent?.trim() || '0';
  
  return details;
}

extractArticleDetails();
```

**提取后数据示例:**
```json
{
  "title": "新月形结膜切除联合结膜巩膜固定术治疗结膜松弛症",
  "authors": ["武耀红", "何敏"],
  "institution": "山西医科大学第二医院",
  "journal": "临床医药实践",
  "publishDate": "2006-04-25",
  "abstract": "目的: 探讨新月形结膜切除联合结膜巩膜固定术治疗结膜松弛症的疗效...",
  "keywords": ["结膜松弛症", "新月形切除", "巩膜固定术"],
  "doi": "",
  "pages": "293-294",
  "volume": "2006(04)",
  "cites": 0
}
```

---

## 常用查询示例

### 基础检索

| 检索内容 | 查询语句 |
|----------|----------|
| 结膜松弛主题 | `SU='结膜松弛'` |
| 结膜松弛治疗 | `SU='结膜松弛' and SU='治疗'` |
| 结膜松弛或手术 | `SU='结膜松弛' or SU='手术'` |

### 进阶检索

| 检索内容 | 查询语句 |
|----------|----------|
| 特定作者 | `AU='张兴儒' and SU='结膜松弛'` |
| 特定单位 | `AF='复旦大学' and SU='结膜松弛'` |
| 篇名检索 | `TI='结膜松弛症'` |
| 全文检索 | `FT='手术方法'` |
| 高被引文献 | `SU='结膜松弛' and CF>10` |
| 特定期刊 | `LY='中华眼科杂志' and SU='结膜松弛'` |

### 医学检索

| 检索内容 | 查询语句 |
|----------|----------|
| 眼科分类 | `SU='结膜松弛' and CLC=R779.6` |
| 基金资助 | `FU='国家自然科学基金' and SU='结膜松弛'` |
| 中英文扩展 | `SU='结膜松弛' or SU='conjunctivochalasis'` |

---

## 反机器人验证处理

CNKI 可能会出现验证,需要用户手动处理:

### 验证类型

1. **滑块验证** - 拖动滑块完成拼图
2. **点选验证** - 点击指定图片
3. **验证码输入** - 输入数字/字母

### 处理方法

**有头浏览器模式(推荐):**

使用 `profile="user"` 让用户可以在浏览器中手动完成验证:

```
profile: user
action: navigate
url: https://kns.cnki.net/kns8s/AdvSearch?type=expert
```

出现验证时,告诉用户:
> "检测到CNKI验证,请手动完成验证后继续"

用户完成验证后,继续执行后续操作。

### 避免验证的建议

- 使用有头模式而非无头模式
- 降低操作频率,避免快速连续请求
- 每次操作间添加适当延迟(2-3秒)
- 保持会话,不要频繁新建浏览器实例

---

## 数据导出

### 导出为JSON

将提取的数据保存为JSON文件:

```
# 提取的数据格式
[
  {
    "title": "文献标题",
    "link": "https://...",
    "authors": "作者列表",
    "source": "期刊来源",
    "date": "发表日期",
    "cites": "引用数"
  }
]
```

使用 write 工具保存:

```
file_path: cnki_results.json
content: <提取的JSON数据>
```

### 导出为CSV

转换为CSV格式:

```
title,authors,source,date,cites
文献标题,作者,期刊,日期,引用数
...
```

---

## 完整工作流示例

### 搜索结膜松弛治疗文献

**1. 打开高级搜索页面**
```
action: navigate
url: https://kns.cnki.net/kns8s/AdvSearch?type=expert
```

**2. 等待页面加载**
```
loadState: networkidle
timeMs: 10000
```

**3. 输入搜索词**
```
kind: fill
ref: 搜索框
text: SU='结膜松弛' and SU='治疗'
```

**4. 点击搜索**
```
kind: click
ref: 搜索按钮
```

**5. 等待结果并提取**
```
loadState: networkidle
timeMs: 8000
```

**6. 翻页提取多页结果**

循环执行:提取当前页 → 翻页 → 等待 → 提取

**7. 保存结果**

将提取的数据保存到文件。

---

## 注意事项

1. **验证码处理**:有头模式下用户可手动处理
2. **请求频率**:每页操作间隔2-3秒
3. **数据完整性**:部分老文献可能无摘要
4. **登录状态**:需要登录才能查看部分文献详情

---

## 错误处理

| 错误情况 | 解决方法 |
|----------|----------|
| 页面加载超时 | 增加等待时间或刷新重试 |
| 找不到元素 | 使用备选选择器 |
| 验证码出现 | 等待用户手动完成 |
| 数据提取为空 | 检查页面结构是否变化 |

---

## 相关文件

- `references/cnki-fields.md` - CNKI专业检索字段一览表
- `references/query-examples.md` - CNKI专业检索查询案例

---

## 更新日志

### 2026-03-16 (v0.0.3)
- 新增时间范围筛选功能说明
- 添加发表时间(具体日期范围)设置方法
- 添加更新时间(相对时间下拉选项)设置方法
- 添加元素引用参考(ref=e124, e125, e129, e130, e131)

### 2026-03-15 (v0.0.2)
- 完善浏览器操作流程
- 添加详细的JavaScript提取代码
- 增加常用查询示例
- 完善反机器人验证处理说明

### 2026-03-05 (v0.0.1)
- 初始版本
---

## 时间范围设置(2026-03-16 更新)

### 发表时间(Publication Time)- 具体日期范围

高级搜索页面提供两种时间范围筛选方式。

#### 方式一:发表时间 - 具体日期范围

点击日期输入框会弹出日历选择器,可选择具体日期:

```
# 点击第一个日期输入框(开始日期)
kind: click
ref: e124  # 发表时间开始日期输入框

# 在弹出的日历中选择日期
# 日历显示当月所有天数,点击具体日期即可选中

# 点击第二个日期输入框(结束日期)
kind: click
ref: e125  # 发表时间结束日期输入框

# 在弹出的日历中选择结束日期
```

**元素参考:**
- 发表时间开始日期输入框: `ref=e124`
- 发表时间结束日期输入框: `ref=e125`
- 两个输入框之间显示为: `2026-03-01 -- 2026-03-31`

**日历选择器操作:**
1. 点击日期输入框,弹出日历
2. 日历默认显示当前月份
3. 点击具体日期数字即可选中
4. 选择后日历自动关闭,日期显示在输入框中
5. 日期格式为: YYYY-MM-DD (如: 2026-03-01)

#### 方式二:更新时间 - 相对时间下拉选项

点击下拉菜单可选择预设的时间范围:

```
# 点击更新时间下拉菜单
kind: click
ref: e129  # 更新时间下拉菜单
```

**元素参考:**
- 更新时间下拉区域: `ref=e129`
- 当前选中值: `ref=e130` (默认显示"不限")
- 下拉箭头: `ref=e131` (显示"∨")
- 下拉选项列表容器: `ref=e641`
- 各选项元素引用:
  - 不限: `ref=e642`
  - 最近一周: `ref=e644`
  - 最近一月: `ref=e646`
  - 最近半年: `ref=e648`
  - 最近一年: `ref=e650`
  - 今年迄今: `ref=e652`
  - 上一年度: `ref=e654`

**可选时间范围:**
- 不限(默认)
- 最近一周
- 最近一月
- 最近半年
- 最近一年
- 今年迄今
- 上一年度
(具体选项以实际页面为准)

Popular in Knowledge

Data month: 2026-09 · Downloads, stars and installs are aggregated monthly from public skill registries (ClawHub, SkillHub). See methodology.