Selenium---鼠标事件---Python3
#coding = utf-8 from selenium import webdriver #引入ActionChains类 from selenium.webdriver.common.action_chains import ActionChains import time #D:\chromedriver_win32\chromedriver.exe ''' ActionChains类包含鼠标操作的常用方法: 1;context_click() 右击 2;double_click() 双击 3;drag_and_drop() 拖动 4;move_to_element() 鼠标悬停在一个元素上 5;click_and_hold() 按下鼠标左键在一个元素上 ''' class driver_1(object): #定义一个对象 def __init__(self): self.driver = webdriver.Chrome('D:\chromedriver_win32\chromedriver.exe') ''' 注意: 1;在ActionChains(driver) 将ActionChains导入到driver对象中。 2;perform() 执行所有ActionChains中的存储的行为。 ''' #右击元素 def driver_context(self): self.driver.get('*************') #定位到要右击的元素 right = self.driver.find_elements_by_css_selector('****') #对定位到的元素执行鼠标右击操作 ActionChains(self.driver).context_click(right).perform() #鼠标双击操作 def driver_double(self): self.driver.get('https://www.baidu.com/') #输入信息 self.driver.find_element_by_css_selector('.s_ipt[name="wd"]').send_keys('我是天才') #定位需要双击的元素 double = self.driver.find_element_by_css_selector('#su[type="submit"]') #对定位的元素执行双击操作 ActionChains(self.driver).double_click(double).perform() time.sleep(3) self.driver.close() #鼠标拖放操作 def driver_drag(self): self.driver.get('*****') #定位元素最初的位置 source = self.driver.find_element_by_css_selector('*****') #定位元素最终的位置 target = self.driver.find_element_by_css_selector('*****') #执行元素的拖拽操作 ActionChains(self.driver).drag_and_drop(source,target).perform() time.sleep(3) self.driver.close() #鼠标移动在元素上 move_to_element() def driver_move(self): self.driver.get('https://www.cnblogs.com/') #定位需要鼠标移动的元素位置 move = self.driver.find_element_by_css_selector('#cate_item_108698 a') #将鼠标移动到元素上面 ActionChains(self.driver).move_to_element(move).perform() time.sleep(3) self.driver.close() #按下鼠标走左键 click_and_hold() def driver_click(self): self.driver.get('https://www.cnblogs.com/') #定位需要鼠标点击的元素位置 move = self.driver.find_element_by_css_selector('#cate_item_108698 a') #点击定位的元素 ActionChains(self.driver).click_and_hold(move).perform() time.sleep(3) self.driver.close() if __name__ == "__main__": a = driver_1() a.driver_click()