freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

xcrawl3r:一款功能强大的网站页面递归爬取CLI工具
2023-09-13 17:36:15


关于xcrawl3r

xcrawl3r是一款功能强大的网站页面递归爬取CLI工具,该工具本质上是一个基于命令行接口实现的实用工具,可以帮助广大研究人员以递归的形式爬取目标站点的Web页面。值得一提的是,该工具可以系统地浏览网页的URL并通过跟踪链接来发现链接的网站页面URL地址。

功能介绍

1、递归爬取目标Web页面中的URL地址;

2、支持从文件解析URL地址,格式包括.js、.json、.xml、.csv、.txt和.map;

3、支持分析robots.txt中的URL地址;

4、支持分析sitemap中的URL地址;

5、渲染页面(包括单页应用程序,如Angular和React);

6、支持跨平台(Windows、Linux和macOS);

工具安装

发布版本安装

广大研究人员可以直接访问该项目的【Releases页面】下载对应操作系统和架构的工具发布版本压缩包。

或者使用wget或curl命令直接拉取xcrawl3r的发布版本:

wget https://github.com/hueristiq/xcrawl3r/releases/download/v<version>/xcrawl3r-<version>-linux-amd64.tar.gz
curl -OL https://github.com/hueristiq/xcrawl3r/releases/download/v<version>/xcrawl3r-<version>-linux-amd64.tar.gz

然后提取源代码即可:

tar xf xcrawl3r-<version>-linux-amd64.tar.gz

源码安装

由于该工具基于Go语言开发,因此我们首先需要在本地设备上安装并配置好Go语言环境:

go install -v github.com/hueristiq/xcrawl3r/cmd/xcrawl3r@latest

接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/hueristiq/xcrawl3r.git

然后切换到项目目录中,构建项目代码:

cd xcrawl3r/cmd/xcrawl3r && \

 go build .

构建完成后,将xcrawl3r代码拷贝到PATH路径下,例如:

sudo mv xcrawl3r /usr/local/bin/

工具使用

下列命令可以直接查看工具的帮助信息:

xcrawl3r -h

帮助信息如下:

_ _____      

__  _____ _ __ __ ___      _| |___ / _ __

\ \/ / __| '__/ _` \ \ /\ / / | |_ \| '__|

 >  < (__| | | (_| |\ V  V /| |___) | |   

/_/\_\___|_|  \__,_| \_/\_/ |_|____/|_| v0.1.0

 

A CLI utility to recursively crawl webpages.

 

USAGE:

  xcrawl3r [OPTIONS]

 

INPUT:

  -d, --domain string               域名匹配的URL地址

      --include-subdomains bool     子域名匹配的URL地址

  -s, --seeds string                 URL种子文件

  -u, --url string                   待爬取的URL地址

 

CONFIGURATION:

      --depth int                   最大爬取深度,默认为3,0为无限爬取

      --headless bool              在爬取过程中显示浏览器内容

  -H, --headers string[]              在请求中引入的自定义Header

                                    例如: -H 'Referer: http://example.com/'

                                     可以使用多个参数以使用多个Header

      --proxy string[]              代理URL,例如http://127.0.0.1:8080

                                      可以使用多个参数来使用多个代理

      --render bool                 使用一个无头Chrome实例来呈现页面

      --timeout int                 请求等待时间,默认为10秒

      --user-agent string           要使用的User-Agent,默认为Web

 

RATE LIMIT:

  -c, --concurrency int             要使用的并行爬取器数量,默认为10

      --delay int                   每次请求的延迟时间,单位为秒

      --max-random-delay int        要增加的额外随机延迟时间最大值,默认为1秒

  -p, --parallelism int             要并向处理的URL数量,默认为10

OUTPUT:

      --debug bool                  启用调试模式

  -m, --monochrome bool            颜色高亮输出

  -o, --output string                 将发现的URL写入到文件中

  -v, --verbosity string               开启Verbose模式

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

xcrawl3r:【GitHub传送门

# web安全 # 爬虫 # 网络爬虫 # 爬取 # 资源爬取
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录