前面文章介绍了ActionChains下的鼠标悬停和右键操作,其实ActionChains还有其他方法,你可以 action = ActionChains,通过这,先初始化一个ActionChains实例对象,然后在action后面输入一个点号,查看支持哪些action方法。本文开始介绍如何执行JS脚本,会用两个例子说明。
示例一,执行js脚本触发一个alert弹出框。
相关脚本代码如下:
# coding=utf-8 import time from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(6) driver.get("https://www.baidu.com") time.sleep(1) driver.execute_script("window.alert('这是一个alert弹框。');") # 注意这里的分号是英文输入法的分号,不能用中文
示例二,执行js脚本来控制浏览器竖向滚动条
打开百度贴吧,然后拖动滚动条到左侧 “地区"
# coding=utf-8 import time from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(6) driver.get("https://tieba.baidu.com/index.html") time.sleep(1) target_elem = driver.find_element_by_link_text("地区") driver.execute_script("return arguments[0].scrollIntoView();",target_elem) # 用目标元素参考去拖动 #driver.execute_script("scroll(0,2400)") # 这个是第二种方法,比较粗劣,大概的拖动