2016-03-21 30 views
1

bu sayfayı taramak için selenyum kullanıyorum: krom,Bul düğmenin XPath [Selenyum]

https://webapps.cityofchicago.org/activegcWeb/

Ama herhangi bir sayfaya nasıl hareket bulamıyorum ben bu XPath olsun 'next' düğmesi:

'//*[@id="id2"]/a[3]' 

Bu kodu kullanıyorum:

url = 'https://webapps.cityofchicago.org/activegcWeb/' 
driver_1 = webdriver.Firefox() 
driver_1.get(url) 
content = driver_1.page_source 

next_button_xpath = '//*[@id="id2"]/a[3]' 
button = driver_1.find_element_by_xpath(next_button_xpath) 
button.click() 

Ama gr

'selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: {"method":"xpath","selector":"//*[@id=\"id2\"]/a[3]"}' 

cevap

1

Sadece bağlantı metni sonraki düğmeye bulmak:

driver.find_element_by_link_text(">").click() 

Komple çalışma koduna (pencere maksimize ve bekleme dahil):

from selenium import webdriver 
from selenium.webdriver.common.by import By 
from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC 


url = 'https://webapps.cityofchicago.org/activegcWeb/' 
driver = webdriver.Firefox() 
wait = WebDriverWait(driver, 10) 

driver.maximize_window() 
driver.get(url) 

# click next 
wait.until(EC.visibility_of_element_located((By.LINK_TEXT, ">"))).click() 
+0

Bunu anladım: Hata İletisi => 'Link metniyle öğe bulunamıyor'> ' –

+0

@LuisRamonRamirezRodriguez cevabı güncelledi, benim için çalışıyor, lütfen kontrol edin. – alecxe

1

bu hatayı ot XPath locator ile "// a [içerir (@href, 'headerPaginator: next')]" ve ardından tıklamanız yeterlidir.

+0

Bunu anladım: Hata İletisi => 'xpath ile öğe bulunamıyor' // a [içerir (@href, 'headerPaginator: next')] '' –