Lui*_*dez 5 python firefox selenium geckodriver
我试图打开不同 URL 的列表,每个标签打开一个,但是当数量超过 20 ~ 21 时,停止打开标签。
我试图将列表分成 20 个一组,并创建 webdriver 的新实例,这工作正常,但我想知道这是否是一种使用同一实例启用更多选项卡的方法?
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get('https://stackoverflow.com/')
for i in range(30):
driver.execute_script("window.open('');")
print(len(driver.window_handles))
time.sleep(3)
driver.quit()
Run Code Online (Sandbox Code Playgroud)
我试图一次打开 30 个标签,但只打开 21 个。我使用的是 python 3.5.0、Firefox 68.0.2 和 geckodriver 0.24.0
如果您查看 stackoverflow 选项卡,您应该会看到一个黄色条,表示其余部分已被弹出窗口阻止程序阻止。(发生这种情况是因为execute_script
在网页上下文中运行脚本。)
要覆盖,请将dom.popup_maximum设置为更大的值:
opts = webdriver.FirefoxOptions()
opts.set_preference("dom.popup_maximum", 50)
driver = webdriver.Firefox(options=opts)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
675 次 |
最近记录: |