У нас есть .NET-программа для запуска безголового Chrome для создания снимка веб-страницы в изображение, и вот пример кода:
class Program
{
static void Main(string[] args)
{
var p = Process.Start(
@"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe",
$@"--headless --screenshot=E:\test{DateTime.Now:HHmmss}.png --disable-gpu --window-size=320,568 http://www.microsoft.com");
p.WaitForExit();
}
}
Консольное приложение запланировано в планировщике задач Windows с параметром «Запускать, вошел ли пользователь в систему или нет». Программа работает отлично в течение нескольких месяцев, но вчера провалилась, мы заметили, что версия Chrome сейчас 73. К счастью, мы нашли компьютер, в котором Chrome все еще 72, поэтому мы однажды протестировали фоновое запланированное задание, обновили Chrome до 73 и протестировали его снова, наконец-то пришли к выводу - Headless Chrome 72 может работать в фоновом режиме, но Chrome 73 может «т .
Кто-нибудь находит такую же проблему в Chrome 73?
[обновлено в 2019/6/23]
Это ошибка Chromium ( ошибка 942023 ), исправленная в Chrome 74.0.3729.108.
Для Chrome 73 вы можете использовать аргумент --disable-features=VizDisplayCompositor
в качестве обходного пути.