web自动化测试:模拟鼠标操作之滑块(滑动图片验证)

代码如下

from time import sleep
from selenium import webdriver
from selenium.webdriver import ActionChains

#1.访问网址
driver = webdriver.Chrome()
driver.get("https://reg.taobao.com/member/reg/fill_mobile.htm")
driver.maximize_window() #窗口最大化
sleep(3)	

driver.find_element_by_css_selector("input[type=tel]").send_keys("XXXXXX")  #这里填你的电话号码
driver.find_element_by_css_selector("a[class=send-btn]").click()

#2.获取滑片的背景大小
background_size = driver.find_element_by_id("nc_1__scale_text").size

#3.获取滑块按钮的起始位置
button  = driver.find_element_by_id("nc_1_n1t")
start_location = button.location

#4.滑块的滑动范围[开始位置的横坐标加上滑片的宽度],由于是平移所以纵坐标没有变化
x_location = start_location["x"] + background_size["width"]
y_location = start_location["y"]

#5.鼠标操作
ActionChains(driver).drag_and_drop_by_offset(button,x_location,y_location).perform()

之后还会添加有关鼠标操作滑块的方法,不只 rag_and_drop_by_offset 一个

ActionChains 是 selenium专门处理鼠标相关操作的插件
drag_and_drop_by_offset 就是拖动鼠标的意思,将按钮拖到横坐标为 x_location,纵坐标为 y_location 的位置

注意:sizelocation后面都没有括号

有问题欢迎提问。

猜你喜欢

转载自blog.csdn.net/qq_43096786/article/details/113728241