此代码仅供学习
所爬取内容禁止商用
最终解释权归作者 云天河 所有
配置
进入项目根目录
复制初始配置文件
cp -r es6/conf.sample es6/conf本次表结构请看目录 sqls/ 建表
请根据到目录 es6/conf/db/mysql.js 配置 mysql、redis、浏览器(chromium或者chrome)应用地址
下载 Chrome
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 update
apt-get install google-chrome-stable这样安装后,该环境就不需要动配置文件了
下载 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 startes6 源代码路径
es5 node 可直接运行路径
请使用普通用户权限运行,否则chrome无法调起
# 切换到普通用户(示例:用户名 hlz)
su hlz
# 给予可执行权限
chmod 755 es5/app.js
# 运行应用,示例运行
node es5/app.js comic mhn_pages内容依次为
- A: 每3小时,获取最新章节内容
- B: 每30分钟,获取最新图片地址信息
0 */3 * * * /usr/sbin/node /data/common/node_puppeteer_example/es5/app.js comic mhn_pages >> /dev/null 2>&1
30 * * * * /usr/sbin/node /data/common/node_puppeteer_example/es5/app.js comic mhn_images >> /dev/null 2>&1如果执行定时任务 B 有中断 你可以通过如下命令 恢复未完成的下载
/usr/sbin/node /data/common/node_puppeteer_example/es5/app.js comic mhn_clear说之前,我得先给你看看我的硬件配置,然后你再考虑要不要多进程处理
Intel(R) Core(TM) i5-8250U CPU @ 1.60GHzprocessor : 7
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
stepping : 10
cpu MHz : 1799.999
cache size : 6144 KB
physical id : 0
siblings : 8
core id : 7
cpu cores : 8
apicid : 7
initial apicid : 7
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch rdseed clflushopt
bugs :
bogomips : 3599.99
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:/usr/sbin/node /data/common/node_puppeteer_example/es5/app.js comic mhn_images >> /dev/null 2>&1本次接口使用golang实现
github.com/HaleyLeoZhang/node_puppeteer_example_go
打开 public/index.html 即可开始体验



