selenium - 我可以使用 selenium 在网站上单击此元素吗?
问题描述
我正在尝试单击一个网站的元素。
来源是:
<dd data-value="33" data-text="" data-target="brand">奥迪</dd>
它应该是一个可点击的下拉按钮,但我尝试了不同的方法:
- find_elements_by_css_selector
- 我刚刚从谷歌复制的 find_elements_by_xpath
但事实证明,硒找到的元素是不可点击的。我很好奇我仍然可以点击它。
网址是https://www.autohome.com.cn/beijing/(可能需要翻译成英文)。
我真的很感激这方面的任何帮助。
另外,这里我要点击所有汽车品牌进行抓取,希望这些方法可以推广到图中列出的阿尔法罗密欧等其他汽车。
非常感谢!
解决方案
错误的元素打开它。
<div class="option option-brand">
刚刚展示了一个 Python 示例。
wait = WebDriverWait(driver, 10)
driver.get("https://www.autohome.com.cn/beijing/")
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,"div.option.option-brand"))).click()
name='奥迪'
wait.until(EC.element_to_be_clickable((By.XPATH,"//dd[.='{}']".format(name)))).click()
进口
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
推荐阅读
- javascript - JS keydown/keyup 交互正在阻塞其他按键效果
- mysql - 将存储过程的每一行插入一个表中
- visual-studio-code - 视图:Explorer + Run 一起显示
- html - 图片在桌面上显示,但在移动设备上不显示
- javascript - JMeter - 将内联 javaScript 替换为 BeanShell
- reactjs - React Native - 嵌套屏幕之间的导航
- spring-kafka - java.util.LinkedHashMap 无法转换为类 GenericEvent - objectmapper typeReference
- javascript - 从历史记录中同时恢复多个页面会导致奇怪的 localStorage 读/写进程(chrome)
- selenium - Datepicker 代码不适用于 Yatra 网站
- number-formatting - Java.NumberEception.Format 错误以及如何解决