用selenium写登录12306官网验证滑动滑块登录成功的代码
时间: 2023-06-08 10:06:39 浏览: 73
好的,请稍等片刻,我马上为您查找并提供该代码。以下是使用Selenium自动化测试框架编写的登录12306官网验证滑动滑块登录成功的代码:
```python
# 导入selenium相关的模块
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
# 开启chrome浏览器,进入12306登录页面
driver = webdriver.Chrome()
driver.get('https://kyfw.12306.cn/otn/login/init')
# 显示等待直到页面完全加载
element = WebDriverWait(driver, 5).until(
EC.presence_of_element_located((By.ID, 'J-loginImg'))
)
# 定位到滑块元素
slider = driver.find_element_by_id('J-slider')
# 使用ActionChains模拟鼠标操作,按住滑块拖动到最右边
ActionChains(driver).click_and_hold(slider).perform()
ActionChains(driver).move_by_offset(300, 0).perform()
# 释放鼠标
ActionChains(driver).release().perform()
# 等待滑块验证通过
WebDriverWait(driver, 5).until_not(
EC.text_to_be_present_in_element((By.ID, 'J-loginImg'), '拖动完成验证')
)
# 定位到登录按钮并点击
driver.find_element_by_id('J-login').click()
# 验证是否登录成功
WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.CLASS_NAME, 'my_order'))
)
# 打印登录成功信息
print('登录成功!')
# 关闭浏览器
driver.quit()
```
以上是关于使用Selenium编写登录12306官网验证滑动滑块登录成功的代码,希望对您有所帮助。如果您有更多的问题,请随时问我。