selenium模擬鼠標操作_1

模擬鼠標操作(ActionChains):
鼠標拖動操作(滑動驗證碼問題),方法如下:
drag_and_drop(self, source, target) 
source:鼠標拖動的原始元素
target:鼠標拖動到的另外一個元素(的位置)
拖動source元素到target元素的位置

drag_and_drop_by_offset(self, source, xoffset, yoffset)
source: 鼠標拖動的原始元素
xoffset:鼠標把元素拖動到另外一個位置的x座標
yoffset:鼠標把元素拖動到另外一個位置的y座標
拖動source元素到指定的座標
-------------------------------------------------------
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains         #模擬鼠標的操作要先引入ActionChains的包
from time import sleep
driver = webdriver.Chrome()
driver.get("https://reg.taobao.com/member/reg/fill_mobile.htm")           #淘寶註冊頁面
sleep(2)
driver.find_element_by_xpath('//*[@id="J_AgreementBtn"]') .click()        #點擊同意協議
driver.maximize_window()                                                  #最大化瀏覽器
sleep(1)
driver.find_element_by_xpath('//*[@id="J_Mobile"]').send_keys("12345678900")
# 獲取滑動條的size
span_background = driver.find_element_by_css_selector('#nc_1__scale_text > span')
span_background_size = span_background.size
print(span_background_size)
# 獲取滑塊的位置
button = driver.find_element_by_css_selector('#nc_1_n1z')
button_location = button.location
print(button_location)
# 拖動操作:drag_and_drop_by_offset
# 將滑塊的位置由初始位置,右移一個滑動條長度(即爲x座標在滑塊位置基礎上,加上滑動條的長度,y座標保持滑塊的座標位置)
x_location = button_location["x"] + span_background_size["width"]
y_location = button_location["y"]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章