Эй, Дэниел Штернлихт, хорошая статья, но закончилось гибридным подходом. Делюсь ссылкой https://stackoverflow.com/questions/52573105/set-width-and-height-of-element-screenshot-in-puppeteer/56383338#56383338
но затем я изменил html2canvas, потому что у html2canvas есть некоторые проблемы с некоторыми правилами CSS и значками, поэтому я закончил использовать только Puppeteer и сделал снимок экрана с элементом, используя element.screenshot()
вместо page.screenshot()
, потому что, если вы используете element.screenshot()
Puppeteer знает границы и автоматически обрезает только эту область. пример:
let element = await page.$(`#some id`);
await element.screenshot({путь: «некоторые/путь»});
и это :)