三八婦女節送媽媽什麼禮物好?適合送媽媽的禮物清單用便籤記錄
阿新 • • 發佈:2022-03-04
滑鼠事件對應的方法需要匯入的類
from selenium.webdriver.common.action_chains import ActionChains
滑鼠事件常用的操作方法
-
context_click() #滑鼠右擊
-
double_click() #滑鼠雙擊
-
drag_and_drop() #按住拖拽
-
move_to_element() #滑鼠懸停
-
perform() #執行以上事件方法
''' 右鍵 雙擊操作 ''' from selenium import webdriver fromtime import sleep from selenium.webdriver.common.action_chains import ActionChains # 獲取瀏覽器物件 driver = webdriver.Chrome() driver.implicitly_wait(5) driver.maximize_window() # 獲取網路連結 url = "https://www.baidu.com/" driver.get(url) # 例項化並獲取ActionChains類 action = ActionChains(driver) # 定位搜尋框,右擊滑鼠,將出現選單 search = driver.find_element_by_css_selector("#kw") action.context_click(search).perform() sleep(2) # 搜尋框中輸入百度一下,然後滑鼠雙擊,將會選中輸入的文字 search.send_keys("百度一下") action.double_click(search).perform() sleep(2) driver.quit()
滑鼠懸停操作
''' 滑鼠懸停操作 ''' from selenium import webdriver from time import sleep from selenium.webdriver.common.action_chains import ActionChains # 獲取瀏覽器物件 driver = webdriver.Chrome() driver.implicitly_wait(5) driver.maximize_window() # 獲取網路連結 url = "https://www.baidu.com/" driver.get(url) # 例項化並獲取ActionChains類 action = ActionChains(driver) # 定位設定。懸停在設定上 出現下拉框 set_el = driver.find_element_by_css_selector("#s-usersetting-top") action.move_to_element(set_el).perform() #定位搜尋設定元素 點選 serch_set = driver.find_element_by_css_selector(".setpref").click() sleep(2) driver.quit()
滑鼠拖拽(drag_and_drop)
from selenium import webdriver from time import sleep from selenium.webdriver.common.action_chains import ActionChains # 獲取瀏覽器物件 driver = webdriver.Chrome() driver.implicitly_wait(5) driver.maximize_window() # 獲取網路連結 url = "https://www.runoob.com/try/try.php?filename=jqueryui-api-droppable" driver.get(url) #例項化ActionChains類 action = ActionChains(driver) #切換frame框 定位‘請拖拽我’元素 driver.switch_to.frame('iframeResult') start_el=driver.find_element_by_id('draggable') end_el=driver.find_element_by_id('droppable') #實現拖拽動作 action.drag_and_drop(start_el,end_el).perform() #彈窗處理 alert=driver.switch_to.alert alert.accept() sleep(3) driver.quit()
滑鼠拖拽滑塊操作 (drag_and_drop_by_offset)
from selenium import webdriver from time import sleep from selenium.webdriver.common.action_chains import ActionChains # 獲取瀏覽器物件 driver = webdriver.Chrome() driver.implicitly_wait(5) driver.maximize_window() # 獲取網路連結 url = "https://www.taobao.com/" driver.get(url) # 例項化並獲取ActionChains類 action = ActionChains(driver) # 定位登入元素 點選 login_el = driver.find_element_by_css_selector(".h").click() #定位忘記密碼元素 點選 rset_pwd_el = driver.find_element_by_css_selector(".forgot-password-a-link").click() #切換視窗 handles=driver.window_handles driver.switch_to_window(handles[1]) driver.find_element_by_id("J-accName").send_keys("18255676189") #1:定位滑塊元素 start_el= driver.find_element_by_css_selector('#nc_1_n1z') #2:獲取滑片的背景大小 background_size = driver.find_element_by_css_selector(".nc-lang-cnt").size start_location= start_el.location #3:.滑塊的滑動範圍[開始位置的橫座標加上滑片的寬度],由於是平移所以縱座標沒有變化 x_location = start_location["x"] + background_size["width"] y_location = start_location["y"] #利用滑鼠拖拽操作 驗證拖拽驗證 # drag_and_drop 意思時 抓住 放下 需要填入 需要拖拽的元素 和 拖拽的終點 元素 action.drag_and_drop_by_offset(start_el,x_location,y_location).perform() sleep(3) driver.close() sleep(2) driver.quit()