python - 如何在不使用 Xpath Selenium Python 的情况下单击
问题描述
如何在不使用 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>
解决方案
如果不想使用 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()
推荐阅读
- javascript - 什么命令相当于 Shift + F5 用于 JS 或 jQuery?
- angular - 为什么表单数组控件中的补丁值不起作用?
- c++ - 从Arduino中的char数组数组中选择项目
- git - 删除部分提交历史 - git
- macos - Google Hangout / Meet 无法在 Macbook 2020 上使用以太网电缆
- docker - docker 容器未运行(centos)
- firebase - Flutter Firebase 身份验证错误 .createUserWithEmailAndPassword:getGoogleApiForMethod() 返回 Gms:com.google.firebase.auth.api.internal.zzao@fb1556c
- unity3d - 如果从脚本调用 MRTK 网格对象集合 UpdateCollection() 不起作用
- python - 窗口上的 Spark 计算方差
- php - PHP表单没有插入值