如何从列表中选择硒项目?

帕维尔·里亚博夫(Pavel Riabov)

有一个列表项(li),您需要单击它。但是,对于这一点-尚不清楚。

我和id已经尝试过,对于xpath和链接中的文本也没有尝试。

<li id="l_pr" class=""><a href="https://vk.com/32444224224" onclick="return nav.go(this, event, {noback: true, params: {_ref: 'left_nav'}});" class="left_row">
    <span class="left_fixer">
      <span class="left_count_wrap fl_r left_void"><span class="inl_bl left_count_sign">0</span></span>
      <span class="left_icon fl_l"></span>
      <span class="left_label inl_bl">My page</span>
    </span>
  </a>
  <div class="left_settings" onclick="menuSettings(0)">
  <div class="left_settings_inner"></div>
</div>
</li>

我希望单击“我的页面”链接

DebanjanB

click()文本作为“我的页面”作为元素的链接启用JavaScript的元素,因此您必须为引入WebDriverWaitelement_to_be_clickable()并且可以使用以下任一解决方案:

  • 使用XPATHA:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//span[text()='My page']"))).click()
    
  • 使用CSS_SELECTOR

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "li[id$='_pr']>a[href^='http'] span.left_label"))).click()
    
  • 使用XPATHB:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//li[contains(@id,'_pr')]/a[starts-with(@href,'http')]//span[text()='My page']"))).click()
    
  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章