使用木偶时出现问题: 我构建了一个控制台应用程序以使用puppeteer抓取数据,但是当我的应用程序关闭时,我仍然看到Processes Task Manager中出现许多铬。 您能帮我解决这个问题吗? 谢谢!
答案 0 :(得分:1)
确保正确使用浏览器实例以及页面实例。每个打开的页面都需要关闭(配置),浏览器也要关闭。
正确用法示例:
var browser = await Puppeteer.LaunchAsync(new LaunchOptions()
{
ExecutablePath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
});
var htmlPage = await browser.NewPageAsync();
await htmlPage.GoToAsync(url);
await htmlPage.PdfAsync(path, pdfOptions);
await htmlPage.CloseAsync();
await browser.CloseAsync();
在此示例中,我启动浏览器实例,使用指定的URL打开一个页面,使用pdfOptions将其内容下载到路径,正确关闭页面并正确关闭浏览器。完成这些步骤后,任务管理器中将没有chrome实例。
如果不清楚,请随时询问:)
答案 1 :(得分:1)
您应该使用using块包装浏览器的创建。像这样:
using(var browser = new await Puppeteer.LaunchAsync())
{
// your code here...
}