启动失败

原因就是 Ubuntu 上缺少 Puppeteer 需要的一些 libraries,把需要的 libraries 下载安装全就没问题了。


例如报错信息如下:

error while loading shared libraries: libatk-1.0.so.0: cannot open shared object file: No such file or directory

那么只需要

sudo apt-get install libatk1.0-0

安装 libatk1.0-0 就好了;如果再次启动 Puppeteer 后还是报错,再把对应缺少的 libraries 安装上即可。


如果嫌麻烦,也可以批量安装以下 libraries:

sudo apt-get install libatk1.0-0 libatk-bridge2.0-0 libcups2 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libxkbcommon-x11-0 libpango-1.0-0 libcairo2 libasound2

以上 libraries 都是我一个一个安装然后启动 Puppeteer 看报错日志试出来的,Ubuntu 22.04 LTS 亲测可用。


参考 https://gist.github.com/winuxue/cfef08e2f5fe9dfc16a1d67a4ad38a01

截图中文乱码(方框)

这是由于 Ubuntu 字体库缺失导致的。

解决方法:

  1. 安装字体配置工具(fontconfig)
    sudo apt-get install -y fontconfig
    
  2. 把字体文件复制到 /usr/share/fonts/ 目录下
  3. 查看字体
    fc-list :lang=zh
    
    可以发现有中文字体了
    /usr/share/fonts/wqy-zenhei.ttc: WenQuanYi Zen Hei,文泉驛正黑,文泉驿正黑:style=Regular
    /usr/share/fonts/wqy-microhei.ttc: WenQuanYi Micro Hei,文泉驛微米黑,文泉驿微米黑:style=Regular
    /usr/share/fonts/wqy-zenhei.ttc: WenQuanYi Zen Hei Mono,文泉驛等寬正黑,文泉驿等宽正黑:style=Regular
    /usr/share/fonts/wqy-zenhei.ttc: WenQuanYi Zen Hei Sharp,文泉驛點陣正黑,文泉驿点阵正黑:style=Regular
    /usr/share/fonts/wqy-microhei.ttc: WenQuanYi Micro Hei Mono,文泉驛等寬微米黑,文泉驿等宽微米黑:style=Regular
    
  4. 重启 pm2 (服务)

做好以上 4 步以后,截图中文就不会全是方框了。(好像可以省略第一和第三步...)

参考文档 https://pptr.dev/troubleshooting#running-puppeteer-on-heroku

评论

0 / 800
全部评论()