Selenium——python中执行js脚本

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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值