javascript - 如何使用 Puppeteer 截取包含视频的页面
问题描述
我目前正在使用 Puppeteer 打开一个网站并截取视频。但是,puppeteer 运行的默认 Chromium 浏览器不适用于视频类型。
我使用 Puppeteer 启动了本地版本的 Chrome,一切正常。
有没有办法用 puppeteer 打开一个实际的 chrome 浏览器实例,而不必指定到 .exe 的本地链接,以使其在托管时更具可扩展性并减少对目录的依赖?
傀儡师 2.0.0
注意:我正在使用 Puppeteer 运行非铬实例(没有 Chrome.exe 的目录)
解决方案
在控制包含音频和视频的页面时,您可能会发现 Puppeteer 的行为不符合预期。(例如,视频播放/截图很可能会失败。)这有两个原因:
- Puppeteer 与 Chromium(而非 Chrome)捆绑在一起,因此默认情况下,它继承了Chromium 的所有与媒体相关的限制。这意味着 Puppeteer 不支持 AAC 或 H.264 等许可格式。
executablePath
(但是,可以通过 to选项puppeteer.launch
强制 Puppeteer 使用单独安装的 Chrome 版本而不是 Chromium 。如果您需要支持这些媒体格式的官方版本的 Chrome,则应仅使用此配置。) - 由于 Puppeteer(在所有配置中)控制 Chromium/Chrome 的桌面版本,因此不支持仅由 Chrome 的移动版本支持的功能。这意味着 Puppeteer不支持 HTTP Live Streaming (HLS)。
推荐阅读
- aframe - Networked-aframe:禁用外观控件也会禁用wasd-controls
- docker - 通过 ssh 的 Portainer 端点
- laravel - 基于角色的关系
- c++ - C++ 多次打印“once *some number* is *another number*”,而我没有在代码中打印任何内容(我需要在接下来的半小时内得到答案)
- python - 用指定的字符集替换字符串中的两个字符以创建所有可能的组合
- c++ - 代码执行分配所有内存,直到它可能在代码初始化时被OOM(linux)杀死。调试此类问题的想法?
- python - Python循环遍历数据框行,直到第一次满足条件
- sharepoint - SharePoint 使用 Visual Studio 2015 将特定 WebPart 移动到另一个功能
- java - 为什么我们要在java中使用接口?
- css - 在 xaringan 演示文稿中禁用鼠标滚动