python3+selenium自动化测试-js解决click失

2020-09-09  本文已影响0人  C1R2

(21)js解决click失效问题

有时候元素明明已经找到了,运行也没报错,点击后页面没任何反应。
第一种解决办法:先点击它的父元素一次,然后再点击这个元素;
第二种解决方法:用js直接执行点击事件。

coding:utf-8

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains # 模拟鼠标操作
from selenium.webdriver.support.select import Select # 下拉框需要引入
import time
driver = webdriver.Chrome()
url = "https://www.baidu.com"
driver.get(url)
time.sleep(3)
mouse = driver.find_element("link text", "设置")
ActionChains(driver).move_to_element(mouse).perform()
time.sleep(3)
driver.find_element("link text", "搜索设置").click()
time.sleep(3)
s = driver.find_element("id", "nr")
Select(s).select_by_visible_text("每页显示50条")

方法一:先点父元素

driver.find_element("id", "gxszButton").click()

driver.find_element("class name", "prefpanelgo").click()

方法二:用js直接去点击

js = 'document.getElementsByClassName("prefpanelgo")[0].click();'
driver.execute_script(js)

参考链接
https://www.cnblogs.com/yoyoketang/p/6569226.html

上一篇下一篇

猜你喜欢

热点阅读