跳转到主要内容

SE::DuckDuckGo - DuckDuckGo 搜索结果爬虫工具

DuckDuckGo

爬虫工具概览

DuckDuckGo 搜索结果爬虫工具。借助 DuckDuckGo 爬虫工具,您可以获取海量的链接库,供后续使用。您可以直接使用在 DuckDuckGo 搜索栏中输入的查询语句,包括搜索运算符(intitle, inurl, site 等)。详情请参阅官方页面 DuckDuckGo Search Syntax

A-Parser 的功能允许您保存 DuckDuckGo 爬虫工具的抓取设置以便后续使用(预设),设置抓取计划等。您可以使用自动查询扩展、从文件替换子查询、遍历字母数字组合和列表,以获取尽可能多的结果。

得益于内置强大的模板引擎 Template Toolkit,您可以按所需的格式和结构保存结果,该引擎允许对结果应用额外的逻辑,并以各种格式输出数据,包括 JSON, SQL 和 CSV

采集数据

  • 搜索结果中的链接、锚点和摘要
采集数据

功能

  • 支持所有 DuckDuckGo 搜索运算符 (intitle:, inurl:, site: 等)。详情请参阅官方页面 DuckDuckGo Search Syntax
  • 抓取 DuckDuckGo 提供的最大结果数 - 10 页,每页 10 个结果元素
  • 总结果数 - 100
  • 可按选定位置抓取(Location 选项)
  • 可选择搜索结果语言(Language 选项)

应用场景

  • 收集链接库 - 用于 A-Poster, XRumer, AllSubmitter 等。
  • 检查网站索引情况
  • 查找网站反向链接(提及)
  • 任何涉及以某种形式抓取 DuckDuckGo 的其他场景

查询

查询时需要指定搜索词,例如:

Football  
测试
site:a-parser.com
爬虫工具 site:a-parser.com
test -site:tests.com
IoT filetype:pdf

查询替换

您可以使用 内置宏 来扩展查询,例如我们想获取一个非常大的论坛数据库,指定几个不同语言的基础查询:

forum
论坛
foro
论坛

在查询格式中指定从 a 到 zzzz 的字符遍历,此方法可以最大程度地轮换搜索结果并获得许多新的唯一结果:

$query {az:a:zzzz}

该宏将为每个原始搜索查询创建 475254 个额外查询,总计将产生 4 x 475254 = 1901016 个搜索查询,这个数字令人印象深刻,但对于 A-Parser 来说完全不是问题。在每分钟 2000 个查询的速度下,此类任务仅需 16 小时即可处理完毕。

使用运算符

您可以在查询格式中使用搜索运算符,这样它将自动添加到列表中的每个查询:

site:$query

结果输出示例

得益于内置的模板引擎 Template Toolkit,A-Parser 支持灵活的结果格式化,允许以任意形式以及结构化形式(如 CSV 或 JSON)输出结果。

导出链接列表

与 SE::Google 类似。

与 SE::Google 类似。

与 SE::Google 类似。

与 SE::Google 类似。

检查链接索引情况

与 SE::Google 类似。

以 SQL 格式保存

与 SE::Google 类似。

将结果转储为 JSON

与 SE::Google 类似。

结果处理

A-Parser 允许在数据抓取过程中直接处理结果,本节列出了 DuckDuckGo 爬虫工具最常用的案例。

与 SE::Google 类似。

与 SE::Google 类似。

提取域名

与 SE::Google 类似。

去除锚点和摘要中的标签

与 SE::Google 类似。

与 SE::Google 类似。

可能的设置

参数名称默认值描述
Pages count5要抓取的页数(1 到 10)
RegionUS (English)选择位置
LanguageEnglish (United States)选择语言
Safe searchModerate是否启用“Safe search”
Serp timeAny time搜索时间范围
Use HTTP/2确定是否使用 HTTP/2 代替 HTTP/1.1
User agentMozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0请求页面时的 User-Agent 请求头