2017-03-15 150 views
0

我試圖在工作之外練習一些自動化。我正在使用www.phptravels.net。我的目標是找到搜索欄,輸入數據,然後單擊搜索。我試圖使用driver.find_element_by_class,css,Xpath多次查找元素,但似乎無法正常工作。我不斷收到錯誤異常:下面是我所擁有的硒python webdriver,定位搜索欄,輸入值和搜索

from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 

driver = webdriver.PhantomJS() 
driver.get("www.phptravels.com") 
searchBar = driver.find_element_by_xpath("//input[@id='citiesInput']") 
searchBar.send_keys('Virginia') 
searchButton = driver.find_element_by_xpath("//*[@id='EXPEDIA']/div/form/div[6]/div/button").click() 

任何幫助表示讚賞!

+0

什麼是異常,它在哪裏拋出 – sevzas

+0

selenium.common.exceptions.NoSuchElementException:消息:{「errorMessage」:「無法找到元素xpath'//輸入[@ id ='citiesInput']'」, 「請求」: –

+0

@RosieLe在找到元素之前等待一段時間。 –

回答

0

當我在網站上看時,找不到與您提供的xpath匹配的任何內容。我相信你首先必須寫一些東西,讓你的webdriver登錄後才能訪問這些信息。

我建議您使用chrome webdriver,以便在出現錯誤時確切地看到您是哪一頁。很難說出Phantom發生了什麼。當您的腳本正常工作時,您可以輕鬆切換回來。

你可以看到如果(在Chrome)

  1. 右鍵單擊您在頁面上
  2. 在控制檯頁面上存在的XPath,單擊「元素」頭
  3. 按Ctrl + F (或CMD + F在Mac)
  4. 輸入的XPath

當我做了兩個XPath的,他們並沒有在網頁上www.phptravels.com存在。

+0

我的歉意。該網頁是www.phptravels.net不.com .com –

+0

你可以再看看它在www.phptravels.net –