Selenium_博客已迁移Selenium的自学之路我爱编程

Python+Selenium操作之键盘组合键模拟操作

2018-01-23  本文已影响97人  路由心定

CTRL+A全选操作

# coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep

driver = webdriver.Firefox()
driver.maximize_window()
driver.get('http://www.baidu.com')
sleep(2)
element=driver.find_element_by_id('kw')
element.send_keys(u'路由心定')
sleep(2)
element.send_keys(Keys.CONTROL + 'a')

BACKSPACE删除操作

# coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep

driver = webdriver.Firefox()
driver.maximize_window()
driver.get('http://www.baidu.com')
sleep(2)
element=driver.find_element_by_id('kw')
element.send_keys(u'路由心定')
sleep(2)
element.send_keys(Keys.BACKSPACE)
'''
加下划线与不加作用一样
'''
sleep(2)
element.send_keys(Keys.BACK_SPACE)

鼠标操作(ActionChains)

# coding=utf-8
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.action_chains import ActionChains

driver = webdriver.Firefox()
driver.maximize_window()
driver.get('http://www.baidu.com')
sleep(2)
#输入框
element=driver.find_element_by_id('kw')
element2=driver.find_element_by_id('su')
#element.send_keys(u'路由心定')
'''
单击操作
'''
ActionChains(driver).click(element2).perform()
print u'单击成功'
sleep(2)
'''
双击操作
'''
element1=driver.find_element_by_id('kw')
ActionChains(driver).double_click(element1).perform()
print u'右击成功'
'''

右键单击
'''
ActionChains(driver).context_click(element1).perform()
print u'右键点击成功'
'''
鼠标移动
'''
#目标位置:右侧百度首页
TargetElement=driver.find_element_by_xpath('/html/body/div[1]/div[1]/div/div[2]/a[1]')
ActionChains(driver).move_to_element(TargetElement).perform()
sleep(2)
#移动到指定元素坐标位置:move_by_offset(x,y).perform()
'''
拖拽
'''
action=ActionChains(driver)
#将目标1移动到2处
action.drag_and_drop(element1, element2).perform()
sleep(2)
#与上边语句作用一致
action.click_and_hold(element1).release(element2).perform()
sleep(2)
#将目标1拖拽到指定坐标下
action.click_and_hold(element1).move_by_offset(880, 88).release().perform()
sleep(2)

Actionchains方法列表

click(on_element=None) ——单击鼠标左键

click_and_hold(on_element=None) ——点击鼠标左键,不松开

context_click(on_element=None) ——点击鼠标右键

double_click(on_element=None) ——双击鼠标左键

drag_and_drop(source, target) ——拖拽到某个元素然后松开

drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开

key_down(value, element=None) ——按下某个键盘上的键

key_up(value, element=None) ——松开某个键

move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标

move_to_element(to_element) ——鼠标移动到某个元素

move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置

perform() ——执行链中的所有动作

release(on_element=None) ——在某个元素位置松开鼠标左键

send_keys(*keys_to_send) ——发送某个键到当前焦点的元素

send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素

欢迎关注我们的微信公众平台:我要学测试

我要学测试.jpg
上一篇下一篇

猜你喜欢

热点阅读