如何在不使用 Xpath Selenium Python 的情况下单击
Posted
技术标签:
【中文标题】如何在不使用 Xpath Selenium Python 的情况下单击【英文标题】:How to click without using Xpath Selenium Python 【发布时间】:2020-04-12 21:01:13 【问题描述】:如何在不使用 Xpath、ID、Linktext 的情况下点击该项目
最好我想在这个属性之后点击
href="/tedsfasidnpopo/Jakpopo"
<td>
<a id="STa_5" data-impr="False" href="/tedsfasidnpopo/Jakpopo" rel="5">
<span class="newfile"><span class="">Jakkpopos12</span></span>
</a>
</td>
【问题讨论】:
【参考方案1】:如果不想使用 Xpatch、ID、Linktex 则使用 css 选择器点击
td>a[ href='/tedsfasidnpopo/Jakpopo']
诱导WebDriverWait
,等待element_to_be_clickable
()
WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.CSS_SELECTOR,"td>a[ href='/tedsfasidnpopo/Jakpopo'] "))).click()
您需要导入以下库。
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
已编辑:
drewno='/tedsfasidnpopo/Jakpopo'
WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.CSS_SELECTOR,"td>a[href='" + drewno + "'] "))).click()
或
drewno='/tedsfasidnpopo/Jakpopo'
WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.CSS_SELECTOR,"td>a[href='']".format(drewno)))).click()
【讨论】:
我还有一个新手问题我想把这个值放在一个变量“/tedsfasidnpopo/Jakpopo”中,然后我尝试了,所以变量是“drewno”WebDriverWait(驱动程序,10)。直到(EC.element_to_be_clickable((By.CSS_SELECTOR,"td>a[ href=drewno] "))).click()以上是关于如何在不使用 Xpath Selenium Python 的情况下单击的主要内容,如果未能解决你的问题,请参考以下文章
如何使用selenium和python创建具有相同xpath的元素列表?
如何通过 Java 使用 XPath 和 Selenium WebDriver 单击 SVG 元素
如何在 Selenium WebDriver 中使用 xPath 来抓取 SVG 元素?