selenium chromedriver需要很长时间才能完成网站的加载

时间:2017-08-27 23:45:32

标签: c# selenium selenium-chromedriver

我试图使用selenium chromedriver浏览器进行报废,我发现该页面获取了我想要的信息并且仍在加载。我不等所有时间,所以是否有一个函数来停止加载页面并完成剩下的代码?

        ChromeDriver CD = new ChromeDriver();

        CD.Navigate().GoToUrl(URL);
        //Complete the code after two seconds from calling the Navigate function 
        //and stop the loading process of the selenium browser
        CD.FindElementByXPath("//*[@id=\"signup-form\"]/div[6]").Click();

我尝试使用这段代码,但它崩溃了我想要程序完成的程序而没有超时的selenium浏览器。

        CD.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(5);

感谢阅读。

2 个答案:

答案 0 :(得分:0)

它不是硒,它的网站很慢。如果您想废弃网站,请查看机器人,因为当加载selenium时,它将加载所有资产,如图像,css,js等。

例如,

Abot可以配置为仅加载html。哪个更快。

答案 1 :(得分:0)

如果你需要的数据是在加载JS之前的html文档中,并且假设JS是需要很长时间加载的部分,你应该能够通过禁用javascript来加快加载时间,这可以完成使用浏览器配置文件。

请参阅此答案:https://stackoverflow.com/a/29160289/2386700

这实际上取决于导致缓慢负载的原因。如果是因为CSS或图像等,您可以跳过使用类似方法的那些。

浏览器配置文件允许您使用浏览器扩展程序。扩展可以在文档加载之前和之后执行它们的代码。这就是他们如何改变加载方式。

还不确定CSS /图像是否已有扩展名。但你总是可以创建一个。

如果缓慢仅仅是由于服务器本身的响应时间,那么你可以用Selenium来帮助它。