找到具有类似href的按钮

时间:2017-01-14 15:00:04

标签: python selenium

一个特定的按钮(允许我跳转到第二页)有一个href

inputHref = /letsdeal?sectionLoadingID=m_timeline_loading_div_1485935999_0_36_timeline_unit%3A1%3A00000000001483240170%3A04611686018427387904%3A09223372036854775803%3A04611686018427387904&unit_cursor=timeline_unit%3A1%3A00000000001483240170%3A04611686018427387904%3A09223372036854775803%3A04611686018427387904&timeend=1485935999&timestart=0&tm=AQBwkKKSIKOhqAju&refid=17

如果我点击这个按钮,第二页打开和一个按钮(带我到第三页)有一个href

inputHref = /letsdeal?sectionLoadingID=m_timeline_loading_div_1485935999_0_36_timeline_unit%3A1%3A00000000001482227114%3A04611686018427387904%3A09223372036854775798%3A04611686018427387904&unit_cursor=timeline_unit%3A1%3A00000000001482227114%3A04611686018427387904%3A09223372036854775798%3A04611686018427387904&timeend=1485935999&timestart=0&tm=AQBwkJZSIKOhqAju&refid=17

两个Href在结尾部分都不同,但在开始时类似。如何使用XPATH使用XPATH找到这两个按钮,就像下面的代码一样。

 extendButton = driver.wait.until(EC.presence_of_element_located(
                        (By.XPATH, "//a[contains(@href,'"+inputHref + "')]")))

1 个答案:

答案 0 :(得分:1)

您可以使用contains()应用部分匹配:

//a[contains(@href, "letsdeal")]

或者:

//a[contains(@href, "/letsdeal")]

或者,使用 CSS选择器

driver.find_element_by_css_selector("a[href*=letsdeal]")

请注意,我不知道“letsdeal”子字符串在您的页面上有多独特,以及它是否在其他href属性值中使用。