c# - 如何在 PuppeteerSharp 中设置下载行为?

标签 c# puppeteer-sharp

我想根据测试需要设置浏览器的下载行为

我试过这个主题的解决方案:puppeteer - how to set download location

var browser = await StartNewChromeAsync(); //starting new chrome without extensions
var pages = await browser.PagesAsync();
var firstPage = pages[0];
var cdp = await firstPage.Target.CreateCDPSessionAsync();
await cdp.SendAsync("Page.setDownloadBehavior", new
                {
                    behavior = "allow",
                    downloadPath = Path.GetAbsolutePath("./testing_downloads")
                });
await cdp.DetachAsync();

我预计,该文件将下载到 ./testing_downloads 中,但它是在默认路径中下载的。 我做错了什么?

最佳答案

我发现在现代版本的 Chrome 中无法执行此操作,因为 Page.setDownloadBehavior 已从 CDP v1.3 中删除 https://chromedevtools.github.io/devtools-protocol/1-3 .

更新: 本作品https://gist.github.com/vabka/88a9b054ee756a53a44691366b16b474

关于c# - 如何在 PuppeteerSharp 中设置下载行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58029951/

相关文章:

c# - puppeetersharp 中的单页 PDF

c# - 有没有办法将 chrome-extension 添加到 PuppeteerSharp Web 驱动程序?

c# - 无法启动 Base!/app/.local-chromium/Linux-706915/chrome-linux/chrome : . .. libX11.so.6

c# - EF,代码优先 - 如何在插入时设置自定义 Guid 标识值

c# - 读入数据时对重复值求和

c# - 基于多线程的 RabbitMQ 消费者

c# - Puppeteer-Sharp 库没有工作,也没有在 web 服务 (wcf) 项目中创建页面

c# - 无法访问容器外的文件夹

c# - 我如何按名称对文件列表进行排序以匹配 Windows 资源管理器显示它们的方式?

c# - Elasticsearch 使用不同排序顺序获取距离