为什么我不能从 'selenium.webdriver.support.ui' 导入名称 'Web'?
Why can't I import name 'Web' from 'selenium.webdriver.support.ui'?
我正在尝试使用此代码块单击“启动地球”按钮。
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Web
from selenium.webdriver.support import expected_conditions as EC
url = 'https://www.google.com/earth/'
driver = webdriver.chrome()
driver.get(url)
wait = WebDriverWait(driver, 10)
launchEarthButton = wait.until(EC.element_to_be_clickable((By.XPATH, '/html/body/header/div/nav[1]/ul[2]/li[2]/a/span/span' ))
launchEarthButton.click()
但是,我收到以下错误消息。怎么了?
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-5-a51783f07755> in <module>
2
3 from selenium.webdriver.common.by import By
----> 4 from selenium.webdriver.support.ui import Web
5 from selenium.webdriver.support import expected_conditions as EC
6 from webdriver_manager.chrome import ChromeDriverManager
ImportError: cannot import name 'Web' from 'selenium.webdriver.support.ui' (/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/selenium/webdriver/support/ui.py)
selenium.webdriver.support.ui
中没有名为 Web
的模块。
但是有两 (2) 个条目如下:
from .select import Select # noqa
from .wait import WebDriverWait # noqa
解决方案
在您使用 WebDriverWait 的代码块中,因此您需要将 Web 更改为 WebDriverWait
, 有效:
from selenium.webdriver.support.ui import WebDriverWait
我正在尝试使用此代码块单击“启动地球”按钮。
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Web
from selenium.webdriver.support import expected_conditions as EC
url = 'https://www.google.com/earth/'
driver = webdriver.chrome()
driver.get(url)
wait = WebDriverWait(driver, 10)
launchEarthButton = wait.until(EC.element_to_be_clickable((By.XPATH, '/html/body/header/div/nav[1]/ul[2]/li[2]/a/span/span' ))
launchEarthButton.click()
但是,我收到以下错误消息。怎么了?
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-5-a51783f07755> in <module>
2
3 from selenium.webdriver.common.by import By
----> 4 from selenium.webdriver.support.ui import Web
5 from selenium.webdriver.support import expected_conditions as EC
6 from webdriver_manager.chrome import ChromeDriverManager
ImportError: cannot import name 'Web' from 'selenium.webdriver.support.ui' (/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/selenium/webdriver/support/ui.py)
selenium.webdriver.support.ui
中没有名为 Web
的模块。
但是有两 (2) 个条目如下:
from .select import Select # noqa
from .wait import WebDriverWait # noqa
解决方案
在您使用 WebDriverWait 的代码块中,因此您需要将 Web 更改为 WebDriverWait
, 有效:
from selenium.webdriver.support.ui import WebDriverWait