import selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
#执行js脚本移除元素属性
driver=webdriver.Chrome() #创建浏览器对象
driver.maximize_window() #窗口最大化
driver.implicitly_wait(10) #隐式等待10s
driver.get("http://www.baidu.com") #打开被测网站
# # javascript脚本
# js = 'document.getElementById("wrapper").children[1].children[2].children[1].removeAttribute("target")'
# # 执行javascript脚本
# driver.execute_script(js)
ele = driver.find_element(By.LINK_TEXT,'hao123') #定位"hao123"元素
js = "arguments[0].removeAttribute('target')" #移除target属性语句 arguments[0] ==> 脚本后第一个参数
driver.execute_script(js,ele) #移除hao123的target属性 excute_script
ele.click() #点击"hao123"
driver.find_element(By.NAME,"word").send_keys('移除元素target属性') #搜索栏搜索
driver.find_element(By.CSS_SELECTOR,'[class="g-cp submitInput button-hook"]').click()
sleep(3)
jhs_handle=driver.window_handles[-1]
driver.switch_to.window(jhs_handle)
driver.find_element(By.XPATH,"//div[@id='wrapper_wrapper']/div[1]/div[3]/div[1]/h3/a").click()
sleep(3)
driver.quit()
# 封装为移除元素属性方法
# ele:元素属性 attribute:要移除的属性
# def execute_js(ele, attribute):
# js = "arguments[0].removeAttribute('%s')"%attribute
# driver.execute_script(js, ele)
Selenium——python中执行js脚本
最新推荐文章于 2023-05-31 16:34:48 发布