在Google航班页面上,我想单击对话框底部的向右箭头(增加天数)(附加图像)。第二次点击给我selenium.common.exceptions.TimeoutException
错误。
这是我的代码:
url = 'https://www.google.fr/flights'
driver.get(url)
elem1 = driver.find_elements_by_xpath("//span[@class='gws-flights-form__date-content']")[0]
elem1.click()
a = wait.until(EC.visibility_of_element_located((By.XPATH, "//<span[@class='gws-flights-dialog__calendar-duration-flipper-increase']")))
a.click()
屏幕截图
答案 0 :(得分:0)
要点击右箭头以增加对话框底部的天数,而不是使用visibility_of_element_located()
方法,则需要使用 element_to_be_clickable()
方法,您可以使用以下任一解决方案:
CSS_SELECTOR
:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "div.gws-flights-form__departure-input[data-flt-ve='departure_date'] div.gws-flights-form__next"))).click()
XPATH
:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//div[@data-flt-ve='departure_date' and contains(@class,'gws-flights-form__departure-input')]//div[@class='gws-flights-form__next']"))).click()