xcrawl3r:一款功能强大的网站页面递归爬取CLI工具
字数 1321 2025-08-10 12:17:54

xcrawl3r 网站递归爬取工具使用指南

工具概述

xcrawl3r 是一款功能强大的基于命令行接口(CLI)的网站页面递归爬取工具,能够系统地浏览网页URL并通过跟踪链接来发现网站页面URL地址。

主要功能

  1. 递归爬取:自动跟踪并爬取目标Web页面中的URL地址
  2. 多格式支持:支持从.js、.json、.xml、.csv、.txt和.map文件解析URL地址
  3. 站点分析
    • 分析robots.txt中的URL地址
    • 分析sitemap中的URL地址
  4. 页面渲染:支持渲染页面,包括单页应用程序(如Angular和React)
  5. 跨平台:支持Windows、Linux和macOS系统

安装方法

发布版本安装

  1. Releases页面下载对应版本
  2. 或使用wget/curl命令:
    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
    
  3. 解压文件:
    tar xf xcrawl3r-<version>-linux-amd64.tar.gz
    

源码安装

  1. 确保已安装Go语言环境
  2. 使用go install安装:
    go install -v github.com/hueristiq/xcrawl3r/cmd/xcrawl3r@latest
    
  3. 或手动克隆并构建:
    git clone https://github.com/hueristiq/xcrawl3r.git
    cd xcrawl3r/cmd/xcrawl3r && go build .
    sudo mv xcrawl3r /usr/local/bin/
    

使用说明

基本命令

查看帮助信息:

xcrawl3r -h

主要参数

输入选项

  • -d, --domain string:域名匹配的URL地址
  • --include-subdomains bool:包含子域名匹配的URL地址
  • -s, --seeds string:URL种子文件
  • -u, --url string:待爬取的URL地址

配置选项

  • --depth int:最大爬取深度(默认为3,0为无限爬取)
  • --headless bool:在爬取过程中显示浏览器内容
  • -H, --headers string[]:自定义请求Header(可多次使用)
  • --proxy string[]:代理URL(可多次使用)
  • --render bool:使用无头Chrome实例渲染页面
  • --timeout int:请求等待时间(默认为10秒)
  • --user-agent string:自定义User-Agent(默认为"Web")

速率限制

  • -c, --concurrency int:并行爬取器数量(默认为10)
  • --delay int:每次请求的延迟时间(秒)
  • --max-random-delay int:额外随机延迟时间最大值(默认为1秒)
  • -p, --parallelism int:并行处理的URL数量(默认为10)

输出选项

  • --debug bool:启用调试模式
  • -m, --monochrome bool:禁用颜色高亮输出
  • -o, --output string:将发现的URL写入文件
  • -v, --verbosity string:开启Verbose模式

使用示例

  1. 基本爬取:

    xcrawl3r -u https://example.com
    
  2. 设置爬取深度:

    xcrawl3r -u https://example.com --depth 5
    
  3. 使用代理:

    xcrawl3r -u https://example.com --proxy http://127.0.0.1:8080
    
  4. 保存结果到文件:

    xcrawl3r -u https://example.com -o results.txt
    
  5. 渲染JavaScript页面:

    xcrawl3r -u https://example.com --render
    

许可证

xcrawl3r 采用 MIT 开源许可证协议。

项目地址

GitHub仓库: https://github.com/hueristiq/xcrawl3r

注意事项

  1. 使用前请确保遵守目标网站的robots.txt规则
  2. 合理设置爬取深度和延迟,避免对目标网站造成过大负担
  3. 对于JavaScript密集型网站,建议启用--render选项
  4. 大规模爬取时建议使用代理和随机延迟
xcrawl3r 网站递归爬取工具使用指南 工具概述 xcrawl3r 是一款功能强大的基于命令行接口(CLI)的网站页面递归爬取工具,能够系统地浏览网页URL并通过跟踪链接来发现网站页面URL地址。 主要功能 递归爬取 :自动跟踪并爬取目标Web页面中的URL地址 多格式支持 :支持从.js、.json、.xml、.csv、.txt和.map文件解析URL地址 站点分析 : 分析robots.txt中的URL地址 分析sitemap中的URL地址 页面渲染 :支持渲染页面,包括单页应用程序(如Angular和React) 跨平台 :支持Windows、Linux和macOS系统 安装方法 发布版本安装 从 Releases页面 下载对应版本 或使用wget/curl命令: 解压文件: 源码安装 确保已安装Go语言环境 使用go install安装: 或手动克隆并构建: 使用说明 基本命令 查看帮助信息: 主要参数 输入选项 -d, --domain string :域名匹配的URL地址 --include-subdomains bool :包含子域名匹配的URL地址 -s, --seeds string :URL种子文件 -u, --url string :待爬取的URL地址 配置选项 --depth int :最大爬取深度(默认为3,0为无限爬取) --headless bool :在爬取过程中显示浏览器内容 -H, --headers string[] :自定义请求Header(可多次使用) --proxy string[] :代理URL(可多次使用) --render bool :使用无头Chrome实例渲染页面 --timeout int :请求等待时间(默认为10秒) --user-agent string :自定义User-Agent(默认为"Web") 速率限制 -c, --concurrency int :并行爬取器数量(默认为10) --delay int :每次请求的延迟时间(秒) --max-random-delay int :额外随机延迟时间最大值(默认为1秒) -p, --parallelism int :并行处理的URL数量(默认为10) 输出选项 --debug bool :启用调试模式 -m, --monochrome bool :禁用颜色高亮输出 -o, --output string :将发现的URL写入文件 -v, --verbosity string :开启Verbose模式 使用示例 基本爬取: 设置爬取深度: 使用代理: 保存结果到文件: 渲染JavaScript页面: 许可证 xcrawl3r 采用 MIT 开源许可证协议。 项目地址 GitHub仓库: https://github.com/hueristiq/xcrawl3r 注意事项 使用前请确保遵守目标网站的robots.txt规则 合理设置爬取深度和延迟,避免对目标网站造成过大负担 对于JavaScript密集型网站,建议启用 --render 选项 大规模爬取时建议使用代理和随机延迟