该篇记录了本科毕设过程中,文献元数据及其PDF批量采集策略的探索过程。

前置条件

  1. 圈定采集范围,即检索式(如知网:SU=('沉积相' + '古地理') AND YE>=1980 AND (FT='研究论文' + '综述')
  2. 确保当前设备(IP)在数字图书馆服务范围内(如校园网),能够访问相关文献数据库

第一阶段:文献元数据采集

文献来源1:知网

知网作为反爬措施较为严密的网站代表,传统爬虫很难适应。这里采用折中的RPA(办公自动化)工具模拟人工操作,达到快速爬取的目的

使用八爪鱼RPA工具,模拟人工操作,批量导出文献数据。注意到:

因此每轮使用RPA工具模拟翻页10次,然后导出全选导出所有元数据,依次进行。每轮开始前,需要配置如下:

  1. edge浏览器打开知网,使用检索式检索得到对应条目
  2. 设置当前页面显示条目数为50
  3. 运行下列RPA程序:https://rpa.bazhuayu.com/shareableLink/691ff8f98e82c3ce7b139a35?ref=5Q4ThY
  4. 每轮结束后,移动到下一页重复上述流程

文献来源2:Web of Science

对于Web Of Science,操作同上:运行下列RPA程序 https://rpa.bazhuayu.com/shareableLink/69200ebe8e82c3ce7b139d80?ref=5Q4ThY

数据清洗

去重筛选,得到含有完整doi的记录,从而确定需要爬取文献原文的列表

第二阶段:文献原文采集

文献来源1:知网

对于文献PDF下载,知网有以下常见的反爬机制(按出现频率排序):

  1. 人机验证:每20条下载时,触发一次滑块验证(图A)
  2. 异常下载提示:点击下载按钮时出现“对不起,您的操作太过频繁!请退出后重新登录”(图B)
  3. 异常操作
主要是滑块验证无法程序模拟破解,因此仍需要人工拖动滑块。RPA程序的思路是:模拟人工点击下载,当遇到上述情况时暂停程序

前置配置

  1. 下载管理:配置浏览器的默认下载位置,将所有下载的文献保存在一个单独的文件夹(确保内存足够),建议使用Free Download Manager而非浏览器默认下载
  2. 配置检索式:知网→高级检索→专业检索输入检索式后得到检索结果,翻页到对应位置

文献来源2:Web of Science

WoS中筛选出的文献来源方多。经尝试,以下路径各自存在不同的限制:

  1. 模拟人工点击下载——各家反爬措施不同,大多会触发机器人验证而锁ip
  2. 从SciHub获取——由于Elsevier等出版方的新文献在其中没有开源更新,大部分所需文献都下载不到
  3. 导入EndNote后一键解析下载——只能下载部分OA文献

因此,需要混合策略。以我个人毕设的文献采集需求为例,需采的9000余条WoS文献出版方来源如下图:
PixPin_2026-03-08_11-03-30.png
Elsevier占最大头。从此出发,我们发现ELsevier提供API以下载文献(详见Elsevier开发者中心),因此希望以此为突破口,解决大部分文献的原文采集问题。总体思路:

  1. 首先进行DOI补全,确保所有待采文献有完整DOI
  2. 根据DOI,逐条匹配文献的来源方
  3. 根据来源方,判断其是否在学校资源范围内
  4. 若是:使用API调用下载原文
  5. 若否:尝试从SciHub获取等其他策略

实际操作时:采用API调用能够获取大多数。剩余的从SciHub几乎很少能补充,而只能通过手动采集的方式补充。本科毕设采用此流程时的实际操作流程如下:

PixPin_2026-06-30_19-13-22.png

References: