您的位置: 网站首页> selenium爬虫> 当前文章

selenium鼠标移动、拖拽、双击、长按等操作

老董2020-09-17180围观,128赞

  selenium鼠标操作靠的是ActionChains(行为链)类,前面的文章我们已经介绍过,详情可以看ActionChains类,selenium的鼠标操作就不一一举例了,本节把鼠标移动、拖拽、双击、长按常见操作罗列下。会使用一种方法自然也会用多种方法!(selenium视觉上看不出鼠标在移动,你可以用右键点击来证实下确实移动了,案例鼠标滚动移动网页下拉

1、move_to_element(to_element)鼠标移动到指定元素

    element = driver.find_element_by_id('xxx')
    ActionChains(driver).move_to_element(element).perform()

2、move_to_element_with_offset(to_element, xoffset, yoffset)

鼠标往右上方横向纵向各移动100

    element = driver.find_element_by_id('xxx')
    ActionChains(driver).move_to_element_with_offset(element, 100, 100).perform()

3、double_click(on_element=None)

双击元素,如果没有指定元素则在当前鼠标位置双击

    element = driver.find_element_by_id('xxx')
    ActionChains(driver).double_click(element).perform()


4、context_click(on_element=None)

在元素上点击鼠标右键,如果没有指定元素则在当前鼠标位置单击右键

    element = driver.find_element_by_id('xxx')
    ActionChains(driver).context_click(element).perform()

5、click_and_hold(on_element=None)

鼠标左键按下不松,如果没有指定元素则在当前鼠标位置

    element = driver.find_element_by_id('xxx')
    ActionChains(driver).click_and_hold(element).perform()

6、drag_and_drop(source, target)

按住 element1 元素,拖动到 element2 元素。

    element1 = driver.find_element_by_id('source')     
    element2 = driver.find_element_by_id('target')
    ActionChains(driver).drag_and_drop(element1, element2).perform()

7、drag_and_drop_by_offset(source, xoffset, yoffset)

向左上角横向纵向移动100。

    element = driver.find_element_by_id('source')
    ActionChains(driver).drag_and_drop_by_offset(element, -100, -100).perform()

8、dey_down(value, element=None)

标按下某个键不释放

	ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()

8、key_up(value, element=None)

松开下某个键

	ActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    selenium鼠标移动、拖拽、双击、长按等操作文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 客服微信:a772483200