from selenium import webdriver
from time import sleep
from selenium.webdriver import ActionChains
from selenium.webdriver import ChromeOptions
#设置浏览器防止检测出session
option = ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation'])
option.add_argument("--disable-blink-features=AutomationControlled")
#chromrdriver
bro = webdriver.Chrome(executable_path="./chromedriver.exe",chrome_options=option)
# 获取页面数据
bro.get("https://kyfw.12306.cn/otn/resources/login.html")
# user password login_click id选择器定位
user_name = bro.find_element_by_id("J-userName")
user_password = bro.find_element_by_id("J-password")
login = bro.find_element_by_id("J-login")
sleep(2)
user_name.send_keys("xxxxxx")
sleep(2)
user_password.send_keys("xxxxxx")
sleep(2)
login.click()
sleep(2)#此处不停,定位不到滑块
# 定位滑块
span = bro.find_element_by_id("nc_1__bg")
action = ActionChains(bro) # 实例化一个动作链对象
action.click_and_hold(span) # 长按且点击
for i in range(5):
action.move_by_offset(60, 0).perform() # perform立即执行动作链操作
sleep(0.1)
action.release() # 释放动作链
sleep(5)
bro.quit()