[问题求助] puppeteer需要使用chromium,但是官方没有linux arm64的编译版本
国产CPU1533次浏览 ·8个回复
电梯直达到第
Shark
uos^1
发表于2024-04-16 16:14
楼主

使用nodejs起服务,把html 转成 pdf

服务器是uos20的centos版本(安装命令是yum,不是apt),全国产架构,arm64的,在内网,不能访问公网

 

在github上找到一个linux arm64的chromium,https://playwright.azureedge.net/builds/chromium/1088/chromium-linux-arm64.zip  Puppeteer v21.5.0 ,Chromium 119.0.6045.105

放在服务器内,不能使用,一直超时

另个方法,使用docker单独装一个,起个服务,打包后运行跑出来是空pdf

 

求助大家有什么好的解决办法吗

https://github.com/puppeteer/puppeteer/issues/7740

这里的方法我都试过了

ps.

java的几个包我也试了,转出来css样式不支持

rust也不行...

最好的解决办法还是使用无头浏览器

叹气...

 
回复收藏只看作者
所有回复
kero990
uos^5
发表于2024-04-17 02:13
沙发

ubuntu库中有为18.04编译的最后一版chromium,版本112.0.5615.49

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-browser_112.0.5615.49-0ubuntu0.18.04.1_arm64.deb

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-browser-l10n_112.0.5615.49-0ubuntu0.18.04.1_all.deb

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg_112.0.5615.49-0ubuntu0.18.04.1_arm64.deb

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_112.0.5615.49-0ubuntu0.18.04.1_arm64.deb

当然你也可以用容器环境使用最新chromium,比如snap或者ace

回复只看作者
Shark
uos^1
发表于2024-04-17 02:39
板凳
kero990

ubuntu库中有为18.04编译的最后一版chromium,版本112.0.5615.49

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-browser_112.0.5615.49-0ubuntu0.18.04.1_arm64.deb

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-browser-l10n_112.0.5615.49-0ubuntu0.18.04.1_all.deb

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg_112.0.5615.49-0ubuntu0.18.04.1_arm64.deb

https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_112.0.5615.49-0ubuntu0.18.04.1_arm64.deb

当然你也可以用容器环境使用最新chromium,比如snap或者ace

这样安装的是桌面版的chromium browser
好像和我的需求不一样

 

我没办法在使用puppeteer的时候调用它

puppeteer使用chrome的包都是在 /root/userName/.cache/puppeteer/chrome/linux-版本号/chrome-linux64 这个路径下的chrome

 

谢谢

回复只看作者
Shark
uos^1
发表于2024-04-17 02:40
地板
Shark

这样安装的是桌面版的chromium browser
好像和我的需求不一样

 

我没办法在使用puppeteer的时候调用它

puppeteer使用chrome的包都是在 /root/userName/.cache/puppeteer/chrome/linux-版本号/chrome-linux64 这个路径下的chrome

 

谢谢

我已经在另外一台电脑上安装过了
启动命令是 chromium-browser 我在软件目录下没有找到需要的东西

还是我没找到,希望又知道的大佬说一下 

回复只看作者
kero990
uos^5
发表于2024-04-17 02:58
4楼
Shark

我已经在另外一台电脑上安装过了
启动命令是 chromium-browser 我在软件目录下没有找到需要的东西

还是我没找到,希望又知道的大佬说一下 

我认真翻了你说的issues,某个人在其中不是发了由第三方构建的chromium,比如

https://playwright.azureedge.net/builds/chromium/1088/chromium-linux-arm64.zip

这个链接下载后是个压缩包,可以解压到任何地方运行。

其中也有几个人表示他们的dockerfile是可以起作用的。

chromium我们可以帮你找,但是puppeteer不知道有几个人用过哦。

 

另外根据我看的结论,putteteer和chromium有严格的对应关系,如果你只找到了固定版本的chromium,那你要用适配的putteteer版本。

参见https://pptr.dev/supported-browsers

 

回复只看作者
Shark
uos^1
发表于2024-04-17 04:04
5楼
kero990

我认真翻了你说的issues,某个人在其中不是发了由第三方构建的chromium,比如

https://playwright.azureedge.net/builds/chromium/1088/chromium-linux-arm64.zip

这个链接下载后是个压缩包,可以解压到任何地方运行。

其中也有几个人表示他们的dockerfile是可以起作用的。

chromium我们可以帮你找,但是puppeteer不知道有几个人用过哦。

 

另外根据我看的结论,putteteer和chromium有严格的对应关系,如果你只找到了固定版本的chromium,那你要用适配的putteteer版本。

参见https://pptr.dev/supported-browsers

 

我尝试过这个

在服务器中启动后,执行方法,已经让puppeteer成功指向chromium

但是在运行中一直超时,不能成功返回pdf文件

使用docker打包扔进去运行也是一样的

但是他提到他在 Ubuntu 22.04 and Amazon Linux 2023 都运行成功了

我这里的架构是arm64, 系统是uos20 且是 uos20的centos版本还不是debian版本

实在是没有办法

回复只看作者
kero990
uos^5
发表于2024-04-17 04:42
6楼
Shark

我尝试过这个

在服务器中启动后,执行方法,已经让puppeteer成功指向chromium

但是在运行中一直超时,不能成功返回pdf文件

使用docker打包扔进去运行也是一样的

但是他提到他在 Ubuntu 22.04 and Amazon Linux 2023 都运行成功了

我这里的架构是arm64, 系统是uos20 且是 uos20的centos版本还不是debian版本

实在是没有办法

我怀疑你就是chromium和puppeteer的版本不对应造成的。

它发那个chromium版本为119.0.6045.105,对应的puppeteer为21.5.0

当然你也可以使用别的组合,playwright有各种版本的chromium。

但不对应,应该是不能用的。

回复只看作者
Shark
uos^1
发表于2024-04-17 07:16
7楼
kero990

我怀疑你就是chromium和puppeteer的版本不对应造成的。

它发那个chromium版本为119.0.6045.105,对应的puppeteer为21.5.0

当然你也可以使用别的组合,playwright有各种版本的chromium。

但不对应,应该是不能用的。

你说的这个我试过了,运行起来了,一直超时,转换不了,设置无线超时时间就直接卡死了
我再试试吧

回复只看作者
小于
uos^1
发表于2024-11-05 07:26
8楼

chromium-l10n_79.0.3945.130-1~deb10u1_all 这个版本好像行

回复只看作者

光荣榜

  • 周榜
  • 月榜
  • 总榜