python自动化测试之web滑动验证码

python⾃动化测试之web滑动验证码
运⾏报错如下:
import cv2
ModuleNotFoundError: No module named 'cv2'
解决⽅案:安装有点慢
import cv2安装opencv-python
pip install opencv-python
python34版本的安装运⾏不成功
python38版本的可以
运⾏报错如下:
from PIL import Image as Im
ModuleNotFoundError: No module named 'PIL'
验证码自动输入解决⽅案:
点开file->settings->project interpreter,双击pip,搜索pillow,点击pillow,左下⾓会有install,安装成功即可。完整代码:
from selenium import webdriver
import time
from slideCode import SlideVerificationCode  #引⼊类⽅法⽂件
# 第⼀步:打开浏览器
driver = webdriver.Chrome()
# 第⼆步:访问QQ空间登录页⾯  qzone.qq/
url="qzone.qq/"
<(url)
# 第三步:点击账号,密码登录
# 1.点击切换iframe
# 2.定位iframe
# 3.点击账号密码登录
driver.switch_to.frame("login_frame")
account_click='//a[contains(text(),"帐号密码登录")]'
driver.find_element_by_xpath(account_click).click()
# 第四步:输⼊账号密码
# 1.定位账号输⼊框,输⼊账号
user='//input[@id="u"]'
pwd='//input[@id="p"]'
driver.find_element_by_xpath(user).send_keys("15xxxxxx8")
driver.find_element_by_xpath(pwd).send_keys("testxxxx")
# 第五步:点击登录
login_btn='//input[@id="login_button"]'
driver.find_element_by_xpath(login_btn).click()
#第六步:滑动图像验证码,⽤到图像识别技术
# 6.1创建⼀个滑动验证的对象
sli = SlideVerificationCode()
# 6.2 计算滑动的距离
# 切换到验证码所在的iframe
driver.switch_to.frame(driver.find_element_by_xpath('//*[@id="tcaptcha_iframe"]')) # 定位滑块图⽚
slider_ele = driver.find_element_by_xpath('//*[@id="slideBlock"]')
# 定位验证码背景图
background_ele = driver.find_element_by_xpath('//*[@id="slideBg"]')
distance = _element_slide_distance(slider_ele, background_ele)
# print("滑动的距离为:", distance)
# 根据页⾯图⽚缩放⽐调整滑动距离
distance = distance *280/680-31
# 6.3模拟滑动⿏标
btn = driver.find_element_by_xpath('//*[@id="tcaptcha_drag_thumb"]')
sli.slide_verification(driver,btn,distance)
driver.close()

本文发布于:2024-09-21 08:39:42,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/386330.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:滑动   验证码   登录   点击   距离
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议