1.创建puppeteer安装目录 mkdir puppeteer
在该目录下安装node.js
- tar xf node-v14.9.0-linux-x64.tar.xz
- 配置环境变量并备份
cp /etc/profile /etc/profile.bak
exprt PATH=$PATH:/安装路径
- node -v 查看版本 npm -v
2.进入该目录更换node镜像为淘宝镜像
npm install -g cnpm –registry =https://registry.npm.taobao.org
使用cnpm -v查看版本号是否安装成功
3.使用cnpm命令进行安装
cnpm install puppeteer (用cnpm可以通过淘宝镜像会自动下载chromiu)
(注:用 npm install puppeteer 使用这个命令下载会附带chromiu下载时会卡死
npm i puppeteer --ignore-scripts 使用这个命令下载不到chromiu
)
如果使用npm install puppeteer 时可以采用手动安装chromium
(创建xxx.js测试文件 【见底部】 并运行 node test.js 会报错显示出chromium的版本号)
根据显示的版本号手动下载chrome: https://npm.taobao.org/mirrors/chromium-browser-snapshots
放到目录:node_modules/puppeteer/.local-chromium/linux-800071/chrome-linux.zip
4.安装依赖库
yum install pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 -y
5.安装字体
yum install ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc -y
6.再次运行xxx.js【见底部】 测试文件即可在目录下生成图片
7.防止生成的图片乱码现象
安装fontconfig yum -y install fontconfig
执行完成之后,就可以在/usr/share文件夹里面看到fonts和fontconfig
从window的C:\Windows\Fonts里面把你需要的字体拷贝出来。比如微软雅黑
在linux的/usr/share/fonts新建一个叫chinese的文件夹
然后把刚刚拷贝字体放到CentOS的/usr/share/fonts/chinese里面
修改chinese目录的权限:chmod -R 775 /usr/share/fonts/chinese
创建的.js脚本测试文件
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({args: ['--no-sandbox', '--disable-setuid-sandbox']});
const page = await browser.newPage();
await page.goto('https://www.baidu.com');
await page.screenshot({path: 'example.png'});
await browser.close();
})();