以携程为例:

 1、先同意协议 2、拉动滑块 处理滑块思路如下 1、先找到滑块和滑轨目标元素 2、利用ActionChains中的drag_and_drop_by_offset方法将滑块拖动至目标位置 drag_and_drop_by_offset(source,xoffset,yoffset)参数说明:(源,目标位置横坐标,目标位置纵坐标)

完整代码:

from selenium import webdriver

from selenium.webdriver.common.by import By

from selenium.webdriver.common.action_chains import ActionChains

# 打开chrome浏览器

d = webdriver.Chrome()

d.maximize_window()

d.implicitly_wait(10)

# 打开携程网注册页面

d.get('https://passport.ctrip.com/user/reg/home')

# 点击同意并继续

d.find_element(By.XPATH, '//div[@class="pop_footer"]/a[@class="reg_btn reg_agree"]').click()

# 定位到滑块按钮元素

ele_button = d.find_element(By.XPATH, '//div[@class="cpt-drop-btn"]')

# 打印滑块按钮的宽和高

# print('滑块按钮的宽:', ele_button.size['width'])

# print('滑块按钮的高:', ele_button.size['height'])

# 定位到滑块区域元素

ele = d.find_element(By.XPATH, '//div[@class="cpt-bg-bar"]')

# 打印滑块区域的宽和高

# print('滑块区域的宽:', ele.size['width'])

# print('滑块区域的高:', ele.size['height'])

# 拖动滑块

ActionChains(d).drag_and_drop_by_offset(ele_button, ele.size['width'], ele.size['height']).perform()

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: