Puppeteer使用setContent方法无法加载动态内容导致截图缺失资源的问题求助
Puppeteer使用setContent方法无法加载动态内容导致截图缺失资源的问题求助
大家好,我最近在用Puppeteer处理HTML截图的时候碰到个棘手的问题,想请教下各位大佬:我用setContent方法加载字符串形式的HTML文档(也就是htmlData)来生成截图,但发现页面里那些通过脚本动态加载的外部资源没法被正常加载,结果截图里缺了不少图片。
我查了一圈没找到类似的案例,我的情况有点特殊——这些HTML里包含了会从外部拉取动态资源、还控制页面行为的脚本,而且HTML的结构也不是固定的。我其实很想实现像page.goto()方法那样完整加载所有动态内容的效果,但因为需求是要先修改HTML内容,再生成截图让客户预览修改后的网站样子,所以只能用setContent,没法直接用goto。
因为HTML内容太大,我就不贴完整代码了,只放我用到的导入和解析相关的代码片段,另外我找了个随机网站能复现这个问题:
import { JSDOM } from 'jsdom'; import puppeteer, { KnownDevices } from 'puppeteer'; // 后续是用JSDOM解析、修改HTML的逻辑,以及调用page.setContent()生成截图的代码
有没有大佬能指点下,怎么让setContent也能像goto那样加载所有动态资源呀?
备注:内容来源于stack exchange,提问作者Luke M
相关产品推荐
相关产品推荐

