20 条回复  ·  299 次点击
Oldletter 小成 2024-9-4 15:20:18
你的 arm 和 x64 还有问题呢(深度踩坑),应该 arm64 上的 pyppeteer 调用 chrome(开源的那个有问题),我之前写的是 pyppeteer 调用 firefox

Dockerfile
```
FROM node:16

# examples: https://github.com/puppeteer/puppeteer/blob/main/docker/Dockerfile

RUN apt-get update \
    && apt-get install -y wget gnupg firefox-esr fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-khmeros fonts-kacst fonts-freefont-ttf libxss1

ENV PUPPETEER_PRODUCT=firefox

WORKDIR /home/app

COPY ./package.json /home/app
COPY ./firefox.js /home/app

RUN npm install
RUN mkdir screenshots

CMD echo “Hello World”
```
调用
```
const puppeteer = require('puppeteer-core');
(async() => {
  const browser = await puppeteer.launch({
    product: 'firefox',
    headless: true,
    executablePath: "/usr/bin/firefox",
    defaultViewport: { width: 1700, height: 800 },
    args: [
    ]
});

const page = await browser.newPage();

await page.goto('https://www.baidu.com/');
console.log('saving baidu screenshot');
await page.screenshot({ path: 'screenshots/baidu.png', fullPage: true });

await browser.close();

})();
```

环境需要你自己搭建下
taoya7 小成 2024-9-4 15:25:18
satori

https://github.com/fercel/satori
xcsoft 初学 2024-9-4 15:33:39
go 的 chromeDP 也可以
seeu2ex 小成 2024-9-4 22:14:44
@dudubaba html2canvas 好像清晰度有问题,以前用过,后端不给下载,直接调这个下图片😹
mikewang 小成 2024-9-5 00:40:53
以前用过 wkhtmltoimage ,不过现在看起来已经 archive 了
123
返回顶部