Python + Selenium JS раскрывающийся список - PullRequest
0 голосов
/ 26 ноября 2018

Я совершенно новый, я прошел через некоторые примеры, которые вы можете найти здесь, но так просто, как кажется, я не могу заставить его работать.

Страница, которую я хочу пройти: www.webauto.de

Мой код, чтобы выбрать марку, модель и нажать «Поиск».

browser = webdriver.Firefox()
browser.get('http://www.webauto.de')
WebDriverWait(browser, 10).until(EC.presence_of_element_located((By.ID, 'quick-search')))
select = Select(browser.find_element_by_id('carsearchmake'))
select.select_by_visible_text('Ford')
sleep(1)
select = Select(browser.find_element_by_id('carsearchmod'))
select.select_by_visible_text('Fiesta')
browser.find_element_by_xpath('//input[@type="submit"]').click()
sleep(1)

Ответы [ 2 ]

0 голосов
/ 26 ноября 2018

Я использовал CSS-селектор атрибут = значение, чтобы назначить кнопку отправки.

from selenium import webdriver

d = webdriver.FireFox()
d.get("https://www.webauto.de/")
d.find_element_by_xpath("//select[@id='carsearchmake']/option[text()='Ford']").click()
d.find_element_by_xpath("//select[@id='carsearchmod']/option[text()='Fiesta']").click()
d.find_element_by_css_selector("[value=Suchen]").click()
#d.quit()
0 голосов
/ 26 ноября 2018

Кажется, вы были довольно близки.

xpath :

browser.find_element_by_xpath('//input[@type="submit"]')

не идентифицирует нужную кнопку search и выможно использовать следующее решение:

browser.find_element_by_xpath("//a[@href='https://www.webauto.de/site/de/suchen/' and contains(.,'Erweiterte Suche')]//following::a[1]/input").click()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...