Я пытаюсь использовать веб-соскабливание, чтобы получить стоимость парковки по этой ссылке, https://application.parkbytext.com/accountus/prepay.htm?locationCode=1127. Это $ 2 за день, который я пытаюсь получить. Я использую python + selenium, но просто не могу получить парковочную цену. Ниже приведен код, я использую, но иногда я попал в цель, но большую часть времени я получаю ошибкуКак использовать селен, чтобы получить стоимость парковки?
selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: {"method":"class name","selector":"gwt-RadioButton"}.
Может кто-нибудь помочь? заблаговременно
def downtownparking(driver):
driver.get("https://application.parkbytext.com/accountus/prepay.htm?locationCode=1127")
try:
### driver.wait = WebDriverWait(driver, 16)
### driver.implicitly_wait(20)
cr = driver.find_element_by_class_name("gwt-RadioButton")
dayprice = cr.find_element_by_tag_name("label")
print (dayprice.text)
Спасибо за большую помощь. Оно работает. На самом деле мне было интересно, почему это вызвало ожидание. Поэтому я попробовал driver.wait = WebDriverWait (драйвер, 16) или driver.implicitly_wait (20), но не работал. Вы знаете, почему явное или неявное ожидание в этом случае не работает? – teapot
@teapot Я думаю, что это довольно хороший обзор: http://stackoverflow.com/questions/10404160/when-to-use-explicit-wait-vs-implicit-wait-in-selenium-webdriver. Кроме того, см. Http://stackoverflow.com/help/someone-answers. – alecxe
Конечно, я приму ответ. Мне просто нужно подождать не менее 10 минут, чтобы нажать кнопку. Ты обалденный! Спасибо за обзорную ссылку, я посмотрю. – teapot