0

コード内の明示的な待機が SafariDriver 2.48.0 で機能しません。WindowsおよびMACのクロムで動作しています。待機に達すると、ドライバーが例外をスローします

ファイル "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/support/wait.py"、71 行目、in until value = method(self._driver) ファイル"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/support/expected_conditions.py"、78 行目、呼び出し中 return _element_if_visible(_find_element(driver, self.locator)) ファイル "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/support/expected_conditions.py"、98 行目、_element_if_visible で要素を返す if element.is_displayed() == 可視性 else False ファイル "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/remote/webelement.py "、358行目、is_displayed return self._execute(Command.IS_ELEMENT_DISPLAYED)['value'] File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/ remote/webelement.py"、494 行目、_execute return self._parent.execute(command, params) ファイル "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/remote/webdriver.py"、236 行目、execute self.error_handler.check_response(response) ファイル内"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5 /site-packages/selenium/webdriver/remote/errorhandler.py"、163 行目、check_response で exception_class(value) を発生させます

私のコードは次のとおりです。

self.driver = webdriver.Safari()
self.driver.wait = WebDriverWait(self.driver, 60)
self.driver.get("http://example.com")
# Click Sign in button and wait for sign in page
self.driver.find_element_by_xpath(XMLDict['SignIn'].Xpath).click()
self.driver.wait.until(EC.visibility_of_element_located((By.ID, XMLDict['User'].ID)))
self.driver.maximize_window()

構成:

OS - macOS Sierra
Selenium 3.0.1
Safari - 10.0.1
SafariDriver - 2.48.0
Python 3.5
4

1 に答える 1