Puppeteer-Sharp по-прежнему появляется много экземпляров хрома в диспетчере задач процесса, когда консольное приложение закрывается - PullRequest
0 голосов
/ 19 ноября 2018

У меня возникла проблема при использовании puppeteer: я создал консольное приложение для сканирования данных с использованием puppeteer, но когда мое приложение выключено, я все еще вижу много хрома в диспетчере задач процессов.Вы можете помочь мне решить эту проблему?спасибо!

введите описание изображения здесь

Ответы [ 2 ]

0 голосов
/ 23 декабря 2018

вы должны обернуть создание браузера с помощью блока. как это:

using(var browser = new await Puppeteer.LaunchAsync())
{
     // your code here...
}
0 голосов
/ 19 ноября 2018

Убедитесь, что вы правильно работаете с экземпляром браузера, а также с экземплярами страницы. Каждая открытая страница должна быть закрыта (удалена), как и браузер.

Пример правильного использования:

        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.

Если что-то неясно, не стесняйтесь спрашивать:)

...