SE::Rambler - Rambler 搜索引擎结果爬虫工具

爬虫工具概览
Rambler 搜索结果爬虫工具。得益于 Rambler 爬虫工具,您可以获取大量链接库供后续使用。您可以直接使用在 Rambler 搜索栏中输入的查询语句,包括搜索运算符(site, ip 等)。
A-Parser 的功能允许您保存 Rambler 爬虫工具的数据抓取设置以便后续使用(预设),设置数据抓取计划等等。您可以使用自动查询扩展、从文件中替换子查询、遍历数字字母组合和列表,以获取尽可能多的结果。
由于内置了强大的 Template Toolkit 模板引擎,结果可以按您需要的形式和结构进行保存,这允许对结果应用额外的逻辑并以各种格式输出数据,包括 JSON, SQL 和 CSV。
采集的数据
- 搜索结果总数
- 搜索结果中的链接、锚点和摘要
- 相关关键词列表 (hints)

功能
- 支持 Rambler 搜索运算符 (url:, site:, inurl:, host:, rhost:, domain:.)
- 最多抓取 25 页,每页 10 到 50 条结果
- 抓取相关关键词 ($hints)
- 可以使用打码服务绕过验证码
- 选择搜索设备:普通桌面端、移动端 Android 或移动端 iOS
应用场景
- 收集链接库
- 评估关键词竞争程度
- 查找网站反向链接(提及)
- 所有需要抓取 Rambler 搜索结果的场景
查询
像在 Rambler 搜索中一样输入查询。假设只需要来自一个网站的链接。在查询框中输入:
"购买门" site:http://kp.ru
查询替换
您可以使用 内置宏 来扩展查询,例如我们想获取一个非常大的论坛数据库,指定几个不同语言的基础查询:
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)输出结果。
导出链接列表
链接 + 锚点 + 摘要并输出位置
将链接、锚点和摘要输出到 CSV 表格
保存相关关键词
结果格式:
$hints.format('$hint\n')
结果示例:
habrahabr
habr
habrahabr ru
xabra
livebusiness
eureka
电子会计
厄尔巴岛
厄尔巴电子会计
habrahabr
...
以 SQL 格式保存
将结果转储为 JSON
结果处理
A-Parser 允许在数据抓取过程中直接处理结果,在本节中,我们列出了 Rambler 爬虫工具最受欢迎的案例。
链接去重
按域名进行链接去重
提取域名
从锚点和摘要中删除标签
按包含关系过滤链接
可能的设置
| 参数名称 | 默认值 | 描述 |
|---|---|---|
| Device | Desktop | 选择搜索设备:普通桌面端、移动端 Android 或移动端 iOS |
| Pages count | 5 | 要抓取的页数(1 到 25) |
| Links per page | 10 | 每页结果数 (10/15/30/50) |
| Rambler region ID | 设置区域的功能。需要指定区域 ID。如何查找所需区域的 ID - 已在此处说明 | |
| Sort | Sites by relevance | 选择结果排序方式 |
| Results filtering | Moderate | 选择结果过滤方式 |
| Results language | Any language | 选择搜索结果语言 |
| Serp time | Anytime | 选择结果时间范围 |
| Results type | Any format | 选择结果类型 (mime type) |
| Exact match | ☐ | 严格匹配查询 |
| Disable autocorrect | ☐ | 禁用自动修正,允许严格按指定查询抓取搜索结果 |
| Use sessions | ☑ | 保存良好的会话,从而可以更快地抓取并减少错误数量 |
| AntiGate preset | default | 确定是否使用 Util::AntiGate 来绕过验证码 |
