一、接上节课内容,实现登录操作
1、目标网址
https://kyfXXXXX.cn/otn/resources/login.html
2、找到登录窗的账号密码的xpath,和登录按钮的xpath
浏览器.get('https://kyfXXXXX.cn/otn/resources/login.html')
浏览器.find_element("xpath",'//*[@id="J-userName"]').send_keys('15836363636')
sleep(1)
浏览器.find_element("xpath",'//*[@id="J-password"]').send_keys('15836363636')
sleep(1)
浏览器.find_element("xpath",'//*[@id="J-login"]').click()
3、弹出滑块窗口,继续找滑块的xpath
拖动=ActionChains(浏览器)
拖动按钮=浏览器.find_element("xpath",'//*[@id="nc_1_n1z"]')
拖动.click_and_hold(拖动按钮)
4、查看滑块的大小,分多次活动,模拟真人的行为
5、滑到总长340,滑块长度为40,所以活动300即可,我们分成5次滑动,每次话60
for i in range(5):
拖动.move_by_offset(60,0).perform()
sleep(0.5)
7、全部源码
浏览器设置=Options()
浏览器设置.add_argument("--disable-blink-features=AutomationControlled")
浏览器设置.add_argument(
'user-agent=Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36')
浏览器 = webdriver.Chrome('./chromedriver', options=浏览器设置)
# Selenium在打开任何页面之前,先运行这个Js文件。
with open('绕过.js') as f:
js = f.read()
浏览器.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": js
})
浏览器.get('https://kyfXXXXXcn/otn/resources/login.html')
浏览器.find_element("xpath",'//*[@id="J-userName"]').send_keys('15836363636')
sleep(1)
浏览器.find_element("xpath",'//*[@id="J-password"]').send_keys('15836363636')
sleep(1)
浏览器.find_element("xpath",'//*[@id="J-login"]').click()
sleep(60)
拖动=ActionChains(浏览器)
拖动按钮=浏览器.find_element("xpath",'//*[@id="nc_1_n1z"]')
拖动.click_and_hold(拖动按钮)
for i in range(5):
拖动.move_by_offset(60,0).perform()
sleep(0.5)
仅供学习交流,禁止非法操作