此问题之前已被问过,但给出的答案对我来说似乎不起作用。问题是,当使用Selenium打开页面时,我会收到大量“无响应脚本”弹出窗口,引用不同的脚本。
当我使用没有Selenium的Firefox打开页面时,我没有错误。另外,奇怪的是,当我手动使用selenium打开页面时,它可以工作。所以我甚至无法确定问题所在。
我可以共享代码,但这样做不是必需的。基本上是这样的:
driver = webdriver.Firefox()
driver.get(url)
do other things (either open links or get page source)
driver.close()
据我所知,错误发生在第二步(获取网址)。
我已将about:config中的脚本等待条件设置为非常高的数字和0,我仍然得到错误。
这个问题有解决方法吗?
注意,我没有打开自己的页面用于测试目的。相反,我打开第三方网站,以获取某些数据。另请注意,有时卷可能会很高(很多页面同时由不同的程序打开) - 也许这就是问题?
我现在的问题主要是我甚至无法在另一台计算机上复制问题,我只是完全迷失了。我希望其他人有类似的问题,并找到了解决方案。我觉得这与Firefox中的设置有关(不是关于:config)。
答案 0 :(得分:12)
尝试了很多设置之后,我想我找到了一个有效的设置,唉,这里提到的,我只是不明白如何使用它(b / c我从来没有处理过firefox配置文件设置)硒):Selenium & Firefox: How can i turn off "Unresponsive script" warnings?
解决方案如下:
from selenium import webdriver
fp = webdriver.FirefoxProfile()
fp.set_preference("dom.max_chrome_script_run_time", 0)
fp.set_preference("dom.max_script_run_time", 0)
driver = webdriver.Firefox(firefox_profile=fp)
答案 1 :(得分:1)
public class Send10000CharactersToChat {
private static WebDriver firefoxDriver;
@Before
public void initialize() {
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("dom.max_chrome_script_run_time", 0);
profile.setPreference("dom.max_script_run_time", 0);
firefoxDriver = new FirefoxDriver(profile);
}
}