Chrome 73在后台计划任务中停止支持无头模式吗?

时间:2019-03-28 01:46:48

标签: scheduled-tasks google-chrome-headless

我们有一个.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 Task Scheduler中使用“运行是否登录用户”选项来计划控制台应用程序。该程序可以正常运行数月,但昨天失败了,我们注意到Chrome版本现在为73。幸运的是,我们发现一台Chrome仍为72的计算机,因此我们对后台计划任务进行了一次测试,将Chrome升级到73,然后再次对其进行了测试,最后得出结论- Headless Chrome 72可以在后台运行,但是Chrome 73可以在后台运行'

有人在Chrome 73上找到相同的问题吗?

1 个答案:

答案 0 :(得分:4)

是的,我们在这里有同样的问题。我们正在通过Selenium WebDriver运行Chrome,并且在更新为Chrome 73之后,我们的后台任务不再正常运行。降级为Chrome 72可解决此问题。

我们的诊断日志显示,以无头模式运行Chrome 73时,对Chrome进程的某些调用似乎已挂起。例如,调整浏览器大小或尝试通过WebDriver API截屏。我们尝试了许多方法来解决此问题,包括将Selenium,W​​ebDriver和chromedriver更新到最新版本,但是它们的行为相同。

在更新后以无头模式运行Chrome 73似乎确实存在问题。