1. 程式人生 > >selenium+python 有道網頁定位不到輸入框 id問題

selenium+python 有道網頁定位不到輸入框 id問題

        按照蟲師著作的《Selenium2 Python自動化測試實戰(第二版)》中的以下程式碼,s實現的功能是開啟網頁並驗證是否是正確的網頁。我在sublimeTest中執行,使用的是Chrome瀏覽器:

執行後出錯:

E
======================================================================
ERROR: test_youdao (__main__.MyTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "E:\learn\Selenium2_Python_test\test_project\test_case\test_youdao.py", line 14, in test_youdao
    driver.find_element_by_id("query").clear()
  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 360, in find_element_by_id
    return self.find_element(by=By.ID, value=id_)
  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 978, in find_element
    'value': value})['value']
  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
NoSuchElementException: Message: no such element: Unable to locate element: {"method":"id","selector":"query"}


  (Session info: chrome=67.0.3396.79)
  (Driver info: chromedriver=2.37.544315 (730aa6a5fdba159ac9f4c1e8cbc59bf1b5ce12b7),platform=Windows NT 10.0.17134 x86_64)

竟然定位不到?! 

於是本著學習的態度,用firebug查看了有道的查詢定位元素,一看不知道,看了才發現定位方式都變了

 

 

 

然後改了新的定位方式之後,再次執行,通過了! 新手的我要吸取教訓啊,網頁更新那麼快,按照別人程式碼學習的時候,要看最新的網頁的格式,否則還會遇到同樣的問題!