// * [@ id =“gwt-uid-2423”]在selenium python2.7 chrome

时间:2017-10-15 11:10:35

标签: python-2.7 selenium xpath selenium-webdriver

HTML代码是..

<div class="N1LCMI-ib-e" role="option" id="gwt-uid-2423" style="user-select: none;">Hotel ID</div>

点击它时有一个按钮有一些类别可供选择一次只能选择一个类别。因此,每当我使用该类别的Xpath时,xpath中的Id都会发生变化。下面是我用来选择该类别的代码。

driver.find_element_by_xpath('//*[@id="gwt-uid-2423"]').click() #select Hotel ID

每次只有2423个部分发生变化。

还有其他方法吗?请帮帮....

2 个答案:

答案 0 :(得分:1)

正如您提到2423 part is getting changed every time属性的id,因此我们可以创建一个独特的css_selectorxpath,如下所示:

  • css_selector

    driver.find_element_by_css_selector("div[class='N1LCMI-ib-e'][id^='gwt-uid-']").click()
    
  • xpath

    driver.find_element_by_xpath("//div[@class='N1LCMI-ib-e'][starts-with(@id, 'gwt-uid-')]").click()
    

答案 1 :(得分:0)

您可以使用XPath通过包含的文本找到元素。

//div[.='Hotel ID']