谷歌无头浏览器puppeteer结合nodeJs+golang书写的行为类爬虫框架

网友投稿 2172 2022-11-04

谷歌无头浏览器puppeteer结合nodejs+golang书写的行为类爬虫框架

谷歌无头浏览器puppeteer结合nodeJs+golang书写的行为类爬虫框架

简介

这是由云天河自封装的一款行为类爬虫框架

章节列表

等等云天河有空了再写写

TODO-初始配置TODO-安装相关依赖TODO-项目结构说明TODO-数据I/OMysql查询构造器配置模型增删改查 Redis缓存MQ使用 TODO-SAPIHTTP服务CLI服务 TODO-爬虫说明行为类爬虫说明 TODO-代码规范

起步

配置

进入项目根目录 复制初始配置文件

cp -r es6/conf.sample es6/conf

本次表结构请看目录 sqls/ 建表 请根据到目录 es6/conf/db/mysql.js 配置 mysql、redis、浏览器(chromium或者chrome)应用地址

安装

- Chrome

linux 环境

linux 版本文档

wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -apt-get updateapt-get install google-chrome-stable

这样安装后,该环境就不需要动配置文件了

windows 环境

- Chrome 浏览器60以上版本 配置 es6/conf/index.js 中 BROWSER.executablePath 值为 chrome.exe 的路径

配套服务

Mysql 5.5 及以上环境 Redis 3.2 及以上环境 Node 10.0 及以上环境

安装依赖

# 安装依赖包,安装过程中,如果提示 chromium 安装失败,可以不用管。最后配置文件指向你的 chrome.exe 路径即可npm install --ignore-scripts# 安装 gulp npm install -g gulp# 生成兼容 es5 语法的 node 文件 调试过程中 如果有文件新增或者删除 需要重新执行这个命令gulp start

目录介绍

es6 源代码路径 es5 node 可直接运行路径

运行

请使用普通用户权限运行,否则chrome无法调起

# 切换到普通用户(示例:用户名 hlz)su hlz# 给予可执行权限chmod 755 es5/task.js

运行应用,示例运行 目前需要 RabbitMQ 支持 建议该任务使用supervisor常驻 启用多个进程,请根据自身情况测试后决定

/usr/sbin/node /data/common/node_puppeteer_example/es5/task.js mhn queue

操纵浏览器

涉及函数使用说明

性能测试

基础配置

CPU 信息 - TODO GPU 信息 - TODO

实际资源消耗

TODO

依赖项目

API

本次对外公共接口使用golang实现

对应项目地址

github.com/HaleyLeoZhang/node_puppeteer_example_go

后台

本次后台使用php实现 开源地址:https://gitee.com/haleyleozhang/yth_cms

通过cURL方式,实现了多个渠道的资源爬取实现了漫画资源相关管理

后台与行为类爬虫的通信方式

后台请求拉取 -> 发送渠道拉取信息到 MQ -> MQ 消费

查看漫画

打开 public/index.html 即可开始体验

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:CMockery 是 Google 发布的用于 C 单元测试的一个轻量级的框架
下一篇:Schema 一个轻量级、简洁和响应式前端UI框架,利用LESS构建
相关文章

 发表评论

暂时没有评论,来抢沙发吧~