Python爬虫编程思想(102):使用Selenium改变节点的属性值

Posted 蒙娜丽宁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python爬虫编程思想(102):使用Selenium改变节点的属性值相关的知识,希望对你有一定的参考价值。

        Selenium本身并没有提供修改节点属性的API,不过可以通过执行javascript代码的方式设置节点属性,而且通过Selenium获取的节点可以直接作为DOM使用,这就意味这可以直接在JavaScript代码中使用查找到的节点。execute_script方法的第1个参数用于指定JavaScript代码,而后面的可变参数,也就是为JavaScript代码传递参数。通过arguments变量获取每个参数值,例如arguments[0]表示第1个参数值,arguments[1]表示第2个参数值,以此类推。

        下面的例子会通过JavaScript代码改变百度搜索按钮的位置,让这个按钮在多个位置之间移动,时间间隔是2秒。

from selenium import webdriver
import time
driver = webdriver.Chrome(\'./webdriver/chromedriver\')
driver.get("http://www.baidu.com")
# 查找百度搜索按钮
search_button = driver.find_element_by_id("su") 
# 定义搜索按钮可以移动的x坐标的位置
x_positions = [50,90,130,170]
# 定义搜索按钮可以移动的y坐标的位置,与x坐标列表中元素的个数要相等
y_positions = [100,120,160,90]
# 迭代位置列表,每隔2秒移动一次搜索按钮
for i in 

以上是关于Python爬虫编程思想(102):使用Selenium改变节点的属性值的主要内容,如果未能解决你的问题,请参考以下文章

Python爬虫编程思想(135):多线程和多进程爬虫--Python与线程

Python爬虫编程思想(135):多线程和多进程爬虫--Python与线程

Python爬虫编程思想(67): 使用pyquery修改节点

Python爬虫编程思想(127):使用Appium抓取移动数据--安装和配置Appium

Python爬虫编程思想(51):使用Beautiful Soup选择节点

Python爬虫编程思想(128):使用Appium抓取移动数据--启动Appium服务