如何让硒chromedriver等待直到最大化窗口?

时间:2020-07-21 22:50:18

标签: python selenium google-chrome selenium-webdriver selenium-chromedriver

我一直在弄乱python / selenium,现在我必须使用“ try”方法。我希望驱动程序等待,直到它最大化窗口,然后继续执行代码。刚开始时,它只是继续执行所有脚本,并且在执行chrome窗口时将其最大化,这看起来很奇怪。 无论如何,我希望你能帮助我, 祝大家有个美好的一天;))

啊,这是代码:(及其下面的错误消息)

from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


driver = webdriver.Chrome(executable_path=r'C:\Users\Anyone\Desktop\Python\chromedriver.exe')

print("Automation Started, please hold on.")

driver.get("https://blablabla")

try:
    recap = WebDriverWait(driver, 5).until(
        EC.WebDriverException(driver.maximize_window())

    )
finally:
    driver.forward()

这是错误消息:

Traceback (most recent call last):
  File "C:/Users/Anyone/PycharmProjects/blebleble/blablabla.py", line 17, in <module>
    EC.WebDriverException(driver.maximize_window())
  File "C:\Users\Anyone\PycharmProjects\blablabla\venv\lib\site-packages\selenium\webdriver\support\wait.py", line 71, in until
    value = method(self._driver)
TypeError: 'WebDriverException' object is not callable

2 个答案:

答案 0 :(得分:0)

使驱动程序对象使用以下代码后:-

driver.manage().window().maximize();

并删除try / finally块。

答案 1 :(得分:0)

不要等待Selenium驱动的ChromeDriver启动的 浏览上下文首先打开,然后最大化

相反,请添加参数 start-maximized 并配置驱动程序,以便 Google Chrome浏览器上下文使用 maximize (最大化)解决方案如下:

from selenium import webdriver

options = webdriver.ChromeOptions() 
options.add_argument("start-maximized")
driver = webdriver.Chrome(options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
driver.get("https://blablabla")