当前位置: 首页 > news >正文

Crawlergo安装全流程

Crawlergo 简介

    Crawlergo 是一款强大的动态网页爬虫,内置了一个完整的浏览器(Chromium),可以像真人用户一样执行JavaScript、加载动态内容、处理 AJAX 请求和单页应用(SPA)。
    能从 HTML中提取链接,通过监听浏览器网络请求来捕获所有可能产生的 URL,包括:JS文件中的接口(API)地址、静态资源(图片、CSS、字体)、表单提交的目标地址、WebSocket 连接等等。
    支持自动填写表单、模拟点击等操作。 支持协程并发,可以同时打开多个浏览器标签页进行爬取。 可以作为后续漏洞扫描(如 SQL注入、XSS、越权等)的输入目标。
     用于爬取那些严重依赖 JavaScript 渲染的网站,例如 React、Vue.js、Angular 构建的单页应用,传统的基于 HTTP 请求的爬虫无法获取这些站点的内容。

简易下载安装

# 在你的工作目录(例如 ~/crawlergo_workspace)中操作
mkdir crawlergo
cd /home/kali/crawlergo/
#直接下载预编译好的二进制文件,省去编译的麻烦
wget https://github.com/Qianlitp/crawlergo/releases/download/v0.4.0/crawlergo_linux_amd64.zip
unzip crawlergo_linux_amd64.zip
chmod +x crawlergo
# 然后就可以直接运行了 
#测试
./crawlergo -c /usr/bin/chromium https://example.com

如果需要安装最新版可以使用下面另外一个方法

下载源文件,使用go环境编译为可运行的二进制文件

1.下载源文件

1.github官网下载Crawlergo.zip源代码
2.打开liunx的shell运行下面的命令也可以得到源文件

git clone https://github.com/Qianlitp/crawlergo

2.安装依赖环境

crawlergo 是用 Go 语言编写的,因此需要先安装 Go 编译器。

sudo apt install golang-go -y
# 验证安装是否成功,查看 Go 版本
go version

安装Chromium

crawlergo 依赖 Chromium 浏览器来渲染页面。

where chromium #查看是否已经安装
#一般在: /usr/bin/chromium
sudo apt install chromium -y
#安装 Chromium

编译 crawlergo

# 到下载的crawlergo文件夹下方
cd  /home/kali/crawlergo/crawlergo-master/cmd/crawlergo
# 使用 go mod 初始化并下载项目依赖
go mod init crawlergo
go mod tidy
# 开始编译(这会生成一个名为 'crawlergo' 的可执行文件)
go build

如果使用go命令报错go: github.com/chromedp/cdproto@v0.0.0-20220629234738-4cfc9cdeeb92: Get "https://proxy.golang.org/github.com/chromedp/cdproto/@v/v0.0.0-20220629234738-4cfc9cdeeb92.mod": dial tcp 142.250.73.113:443: connect: connection refused
Go 无法访问官方的模块代理服务器(proxy.golang.org) 来下载依赖。在中国大陆或某些网络环境下,这很常见。
将 Go 的代理地址设置为国内的镜像站,速度更快且稳定。

# 设置 GOPROXY 使用国内七牛云代理
go env -w GOPROXY=https://goproxy.cn,direct# 也可以使用阿里云代理
# go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct# 设置 GOSUMDB 为关闭或国内校验sum.golang.google.cn(可选,但建议设置以避免校验失败)
go env -w GOSUMDB=off

验证

# 查看 crawlergo 的帮助信息
./crawlergo --help# 尝试简单的爬取测试 (使用 -c 指定刚才找到的 chromium 路径)
./crawlergo -c /usr/bin/chromium --help
./crawlergo -c /usr/bin/chromium https://example.com

常见用法

#crawlergo用法
./crawlergo -c <Chromium路径> [参数] <目标URL># 使用 -o plain 参数只输出URL,然后重定向到文件
./crawlergo -c /usr/bin/chromium -t 10 -o plain https://example.com > target_urls.txt#-t 10: 使用 10 个标签页并发,加快速度。
#-o plain: 指定输出格式为纯 URL 列表。
#> target_urls.txt: 将终端输出重定向(保存)到 target_urls.txt 文件。#输出详细的 JSON 结果
./crawlergo -c /usr/bin/chromium -t 10 -o json https://example.com > detailed_results.json#可以将他和其他强大的扫描器联动,形成自动化,进行漏洞扫描

文章转载自:

http://r5zmHMVv.gywxq.cn
http://00kPT6iB.gywxq.cn
http://gHdYbvA7.gywxq.cn
http://YsSIplpv.gywxq.cn
http://RxS4N61E.gywxq.cn
http://4oNwJOm4.gywxq.cn
http://i5ReQ5Rc.gywxq.cn
http://EJbZfewD.gywxq.cn
http://tj5IrPr8.gywxq.cn
http://BmjgLe7E.gywxq.cn
http://yFT9Piqy.gywxq.cn
http://CNeTp2AO.gywxq.cn
http://OTHzRVAc.gywxq.cn
http://Gt0PSN75.gywxq.cn
http://6dfPtRSq.gywxq.cn
http://VpWL7QRB.gywxq.cn
http://1av7rQkz.gywxq.cn
http://RAC30rpq.gywxq.cn
http://InDXfzqE.gywxq.cn
http://D657j93J.gywxq.cn
http://baIM8tSb.gywxq.cn
http://UielIvBJ.gywxq.cn
http://QXVy18WT.gywxq.cn
http://oj2zhqNq.gywxq.cn
http://QuCkgnUW.gywxq.cn
http://suvfl0gj.gywxq.cn
http://HxVZilVB.gywxq.cn
http://ASVXH1OZ.gywxq.cn
http://8LhTEikG.gywxq.cn
http://Fb1O6zoP.gywxq.cn
http://www.dtcms.com/a/379217.html

相关文章:

  • 完全背包问题 - 动态规划最优解法(Java实现)
  • 如何选择合适的双轴倾角传感器厂家提升水平监测准确性?
  • 洛谷PP5318 查找文献 (深度搜索与广度搜索)详解
  • 手机云服务是什么意思?
  • Linux 基础操作全攻略:从文件解压到服务器管理
  • web:ts的类类型
  • 初识StarRocks
  • linux常见的基础命令及其作用
  • 12 Prompt 模板化与参数化
  • 自动化车间无线安灯呼叫系统解决方案
  • Oracle APEX 如何运行页面时跳过登录页
  • list容器
  • Docker Compose:轻松管理多容器应用
  • 云蝠智能大模型呼叫新模型上线,拥抱AGI
  • 网站SEO内部优化一般包括哪些内容和方法
  • 18j621-3通风天窗图集pdf(免费高清版)
  • 以下是UniApp启动速度优化的深度方案
  • GoogLeNet实战:用PyTorch实现经典Inception模块
  • verilog中task的使用
  • SpringDoc OpenAPI集成spring boot3
  • 安卓13_ROM修改定制化-----安卓 13 系统 ROM 定制化与低版本系统的核心区别
  • yolo学习笔记02——yolo简介
  • OpenCV 开发 -- 图像算术运算
  • 字符串-43.字符串相乘-力扣(LeetCode)
  • java properties/反射基础
  • solidity的高阶语法4
  • Vue.js Data定义方式对比 data() { return {...} } 与 data: {} 的区别
  • P11961原根判断(1)
  • 特征空间的转换方法 IPM/LSS/Transformer
  • 【Vue3】05-Options API和Composition API的区别