WARCannon:高速低功耗网络爬虫

WARCannon是一款基于AWS技术的高效网络爬虫,支持正则表达式构建、并行处理和大规模数据计算。它能以100Gbps的速度从S3提取数据,并使用DynamoDB和CloudFront报告状态,结果存储在S3。要运行此工具,需要安装awscli、terraform、jq、jsonnet和npm,并配置settings.json。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于WARCannon
WARCannon是一款功能强大的高速低功耗网络爬虫,可以帮助广大研究人员以最简单和快速的方式爬取网络资源。

WARCannon支持的功能如下:
针对真实场景中常见的爬取数据构建和测试正则表达式模式;
支持加载常见爬取数据库,支持并行处理;
支持大规模数据计算处理(异步);
数据存储,轻松检索爬取结果;

工作机制
WARCannon巧妙地利用AWS技术,可以横向扩展以支持任何规模的数据爬取,并且能够根据需求转换服务传输地区以将成本降至最低,然后以最快的速度从S3中提取数据,每个节点速度高达100Gbps,并使用数百个CPU内核进行并行处理,然后通过DynamoDB和CloudFront报告爬取状态,并通过S3存储结果。

工具安装
WARCannon的运行需要我们安装并配置好下列组件:
awscli (v2)
terraform (v0.11)
jq
jsonnet
npm (v12或v14)

接下来,使用下列命令将该项目源码克隆至本地,然后拷贝配置样本文件:
$ git clone git@github.com:c6fc/warcannon.git
$ cd warcannon
warcannon$ cp settings.json.sample settings.json
开发正则表达式
首先,我们需要打开lambda_functions/warcannon/matches.js文件,然后修改regex_patterns对象来引入正则表达式。数据格式为“name: pattern”格式。下面给出的是默认搜索数据集的一个样本:
exports.regex_patterns = {
“access_key_id”: /(‘A|"A)(SIA|KIA|IDA|ROA)[JI][A-Z0-9]{14}[AQ][’"]/g,
};
除此之外,我们还可以从指定域名爬取数据:
exports.domains = [“example1.com”, “example2.com”];

工具运行演示
在这里插入图片描述

项目地址
WARCannon:https://github.com/c6fc/warcannon

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值