from selenium import webdriver
from selenium.webdriver.common.actionchains import ActionChains as ac #鼠标事件包
from selenium.webdriver.common.keys import Keys as ky
#键盘事件_
driver = webdriver.Chrome()

#常规操作

driver.findelement_by_id(‘id’).send_keys(‘’)#输入的字符串
driver.find_element_by_id(‘id’).click()
#鼠标单击事件
driver.find_element_by_id(‘id’).submit()
#回车事件
print(driver.title)
#获取title值
driver.find_element_by_id(‘id’).get_attribute(“属性名称”)
#获取元素属性值getattribute(“属性”)
driver.findelement_by_id(“su”).is_displayed()#判断元素是显示还是隐藏(返回布尔值)
print(driver.name)
#获取浏览器名称
driver.find_element_by_id(“su”).size()
#获取元素size
driver.back()
#返回上页
driver.forward()
#切换下一页
driver.refresh()
#刷新
driver.close()
#关闭当前窗口
driver.quit()
#退出
driver.maximize_window()
#窗口最大化_

#鼠标事件(先导入包)

ac(driver).contextclick(driver.find_element_by_id(‘id’)).perform()#鼠标右击事件
ac(driver).double_click(driver.find_element_by_id(‘id’)).perform()
#鼠标双击事件
ac(driver).drag_and_drop(‘source, target’).perform()
#鼠标拖动事件
ac(driver).move_to_element(driver.find_element_by_id(‘id’)).perform()
#鼠标右击事件_

#键盘事件(先导入包)

driver.findelement_by_id(‘id’).send_keys(ky.BACK_SPACE)#删除键
driver.find_element_by_id(‘id’).send_keys(ky.SPACE)
#空格键
driver.find_element_by_id(‘id’).send_keys(ky.TAB)
#制表键
driver.find_element_by_id(‘id’).send_keys(ky.ESCAPE)
#回退键
driver.find_element_by_id(‘id’).send_keys(ky.ENTER)
#回车键
driver.find_element_by_id(‘id’).send_keys(ky.CONTROL,‘A’)
#全选
driver.find_element_by_id(‘id’).send_keys(ky.CONTROL,‘C’)
#复制
driver.find_element_by_id(‘id’).send_keys(ky.CONTROL,‘X’)
#剪切
driver.find_element_by_id(‘id’).send_keys(ky.CONTROL,‘V’)
#粘贴
driver.find_element_by_id(‘id’).send_keys(ky.F1)
#键盘F1
driver.find_element_by_id(‘id’).send_keys(ky.F12)
#键盘F12_

#iframe切换

driver.switchto.frame(‘id’)#通过id切换
driver.switch_to.frame(0)
#通过索引切换
driver.switch_to.default_content()
#跳出iframe
driver.switch_to.parent_frame()
#返回上一级_

#窗口句柄

driver.currentwindow_handle()#获取当前句柄
driver.window_handles()
#获取所有句柄
driver.switch_to.window(driver.window_handles[0])
#切换窗口句柄
driver.implicitly_wait(10)
#隐式等待_

#页面滚动

driver.executescript(‘window.scrollBy(0,200)’)#像下滚动200个像素
driver.execute_script(‘window.scrollBy(0,-200)’)
#像上滚动200个像素
driver.execute_script(‘window.scrollBy(200,0)’)
#像右滚动200个像素
driver.execute_script(‘window.scrollBy(-200,0)’)
#像左滚动200个像素
driver.execute_script(“arguments[0].scrollIntoView();”,driver.find_element_by_id(‘id’))
#滚动至元素可见位置_