Python Selenium xPath从div类a rel中选择
然而,课文后面有一个数字,它是各种各样的Python Selenium xPath从div类a rel中选择,python,selenium,xpath,Python,Selenium,Xpath,然而,课文后面有一个数字,它是各种各样的 browser.find_element_by_xpath("//div[@class='into']/[text()='AA']").click() 这不起作用。如果您想将示例与text()一起使用,则可以使用以下任一选项: browser.find_element_by_xpath("//div[@class='into']/[rel='AA']").click() 或 否则,使用@lauda给出的答案并使用@rel将其声明为属性使用以下xpat
browser.find_element_by_xpath("//div[@class='into']/[text()='AA']").click()
这不起作用。如果您想将示例与text()一起使用,则可以使用以下任一选项:
browser.find_element_by_xpath("//div[@class='into']/[rel='AA']").click()
或
否则,使用@lauda给出的答案并使用@rel将其声明为属性使用以下
xpath
browser.find_element_by_xpath("//div[@class='into']/div[starts-with(text(), 'AA')]").click()
还可以使用normalizespace
方法省略类名中的空格,如下所示-
browser.find_element_by_xpath(".//div[@class='into']/div[@rel='CA']").click()
如果您需要使用
XPath
将其中一个元素与属性rel=“AA”
或rel=“BB”
匹配(以防其中一个元素可能不在页面上),请尝试以下操作:
browser.find_element_by_xpath(".//div[normalize-space(@class)='state'][@rel='AA']").click()
请尝试@rel而不仅仅是rel.SyntaxError:该表达式不是合法表达式。对于这三个triesAh,我忘记了第二个div,这很可能是无法定位的问题,也尝试了://div[@class='into']/div[@class='state'][@rel='CA']在你的
class='state'
中是否有空格?你能试试//div[@class='into']/div[@rel='CA']
是的!它起作用了。谢谢!:)你能澄清一下吗。make?实际上你的类名中有空格,这就是为什么它阻止你找到匹配项
browser.find_element_by_xpath(".//div[@class='into']/div[@rel='CA']").click()
browser.find_element_by_xpath(".//div[normalize-space(@class)='state'][@rel='AA']").click()
browser.find_element_by_xpath("//div[@class='into']/div[@rel="AA" or @rel="BB"]").click()