2017-08-31 12 views
-1

要素がない場合はどのように例外を処理しますか?トレースバックでそれを見つける方法はありますか?NoSuchElementExceptionの例外エラーは何ですか?

Traceback (most recent call last): File "firsttry.py", line 56, in < module >

browser.find_element_by_xpath("html/body/div/section/div[1]/div[2]/ul[5]/li/div[1]/form/input[3]").click()

File "C:\ProgramData\Anaconda2\lib\site-packages\selenium\webdriver\remote\webelement.py", line 72, in click self._execute(Command.CLICK_ELEMENT)

File "C:\ProgramData\Anaconda2\lib\site-packages\selenium\webdriver\remote\webelement.py", line 461, in _execute return self._parent.execute(command, params)

File "C:\ProgramData\Anaconda2\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute self.error_handler.check_response(response)

File "C:\ProgramData\Anaconda2\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response raise exception_class(message, screen, stacktrace)

selenium.common.exceptions.WebDriverException: Message: unknown error: Element is not clickable at point (659, 28). Other element would receive the click: ... (Session info: chrome=60.0.3112.113) (Driver info: chromedriver=2.24.417431 (9aea000394714d2fbb20850021f6204f2256b9cf),platform=Windows NT 10.0.14393 x86_64)

+1

なぜ、NoSuchElementExceptionを処理したいのですか?提供されたログを考慮すると、 '要素はポイントでクリックできませんでした...'例外 – Andersson

+0

'WebDriverException:Message:unknown error:要素がポイント(659、28)でクリックできません。他の要素はクリックを受け取ります:... 'これを確認してください(** discussion **)(https://stackoverflow.com/questions/44912203/selenium-web-driver-java-element-is-not-clickable-at -point-36-72-other-el) – DebanjanB

答えて

0

すべてのエラーメッセージからはっきりしています。クリックしたい要素をクリックして他の要素がクリックされると、手動で同じことをすることはできません。

Element is not clickable at point (659, 28). Other element would receive the click:

この要素はクリックできません。

browser.find_element_by_xpath("html/body/div/section/div[1]/div[2]/ul[5]/li/div[1]/form/input[3]").click()

どの要素が問題を生成していますか? 上記の行にブレークポイントを置き、コードをデバッグしてください。あなたは手動でそれを見ることができるはずです。 失敗したときにスクリーンショットを撮っているのであれば、デバッグする必要さえないかもしれません。スクリーンショットはあなたに伝えるのに十分なほどです。

0

例外をインポートすることでエラーをキャッチできました。このトレースバックのエラーはNoSuchElementException自体になります。私はselenium.common.exceptionsからインポートしました。NoSuchElementException

関連する問題