import unittest
from PIL import Image
from selenium import webdriver
from time import sleep
import ddddocrclass WeChat(unittest.TestCase):# def __init__(self):def setUp(self) -> None:self.driver = webdriver.Chrome()#自己的网站self.driver.get('httpsXXXXXXadminIndex.html')#    全屏打开self.driver.maximize_window()self.driver.implicitly_wait(10)self.ocr = ddddocr.DdddOcr()def test_login_success(self):#  打开自己的网站会有安全认证self.driver.find_element('id', 'details-button').click()self.driver.find_element('id', 'proceed-link').click()self.driver.find_element('xpath', '//*[@id="layui-layer1"]/div[3]/a').click()sleep(1)self.driver.find_element('id', 'account').send_keys('BluetoothHaAdmin')self.driver.find_element('id', 'password').send_keys('000000')# 先获取屏幕截图,在找元素,定位大小,通过定位出来的地方截图后使用识别验证码模块,将其# 以二进制的方式识别后,输出后填写到填写验证码的位置self.driver.save_screenshot('Login_page.png')yzm_btn = self.driver.find_element('id', 'id_img')# 获取图片元素的位置loc = yzm_btn.location# 获取图片的宽高size = yzm_btn.size# 获取验证码上下左右的位置left = loc['x']top = loc['y']right = (loc['x'] + size['width'])bottom = (loc['y'] + size['height'])val = (left, top, right, bottom)# 打开网页截图login_pic = Image.open('Login_page.png')# print(val)# 通过上下左右的值,去截取验证码yzm_pic = login_pic.crop(val)yzm_pic.save('yzm.png')with open('yzm.png', 'rb') as f:img_bytes = f.read()# print (img_bytes)res = self.ocr.classification(img_bytes)print("验证码:", res, type(res))self.driver.find_element('id', 'id_webVerificationCode').send_keys(res)sleep(1)self.driver.find_element('id', 'id_loginButton').click()sleep(12)self.driver.quit()# if __name__ == '__main__':
#     ocr = ddddocr.DdddOcr()
#     wechat = WeChat()
#     # 点击安全提醒
#     sleep(12)
#     #退出
#     wechat.driver.quit()

1.打开自己网站会有的不安全提醒,没有就去掉

2.登录系统界面

验证码可以看下自己截图是否正确 ,可以调节left4个位置

最简单的python使用ddddocr模块在线识别验证码后登录相关推荐

  1. python pexpect telnet_使用python的pexpect模块,实现远程免密登录的示例

    说明 当我们需要用脚本实现,远程登录或者远程操作的时候,都要去解决如何自动输入密码的问题,一般来说有3种实现方式: 1).配置公钥私钥 2).使用shell下的命令,expect 3).使用pytho ...

  2. python爬虫——利用超级鹰识别验证码并进行古诗网进行模拟登录

    目录 前言 一.超级鹰的注册 二.利用xpath解析登录页面的验证码图片 三.利用超级鹰识别获取验证码 四.模拟浏览器发送请求进行模拟登录 五.验证是否模拟登录成功 前言 本文章是利用python爬虫 ...

  3. Python使用selenium和百度AI开放平台识别验证码自动登录

    文章目录 本文内容 工具准备 Python Packages 浏览器驱动 准备登录 第一步   用Chrome浏览器打开目标网站 第二步   调用selenium输入账户密码 第三步   获取图片验证 ...

  4. python pycurl_简单谈谈Python的pycurl模块_python

    PycURl是一个C语言写的libcurl的python绑定库.libcurl 是一个自由的,并且容易使用的用在客户端的 URL 传输库.它的功能很强大,PycURL 是一个非常快速(参考多并发操作) ...

  5. Python爬虫requests模块在线生成请求头

    写爬虫的时候,请求头几乎是必写的,但是写起来有点繁琐,虽然不难,但是麻烦,所以这时候,一个自动生成请求头的方法就显得很重要了 在线生成请求头 https://curlconverter.com/ 使用 ...

  6. python pycurl_简单谈谈Python的pycurl模块

    pycurl是一个用c语言编写的libcurl Python实现,功能非常强大,支持操作协议有FTP,HTTP,HTTPS,TELNET等. 模块的常用方法说明: close()方法,对应libcur ...

  7. 简单用Python+OpenCv实现AI人脸识别--(3)—训练人脸识别模型

    案例引入 首先简要讲解数据集训练生成模型的原理,这里使用的是LBPH算法,在OpenCV模块中已经有内嵌的方法cv2.face.LBPHFaceRecognizer_create(),为了方便小伙伴们 ...

  8. 【项目10】python+flask搭建CNN在线识别手写中文网站

    使用python+flask搭建的一个网站,然后从网页的写字板上获取鼠标手写的汉字经过转码后传回后台,并经过图片裁剪处理之后传入CNN手写中文识别的模型中进行识别,最后通过PIL将识别结果生成图片,最 ...

  9. python+flask搭建CNN在线识别手写中文网站

    向AI转型的程序员都关注了这个号

最新文章

  1. ASP.NET MVC 概述
  2. ApacheFlink简介
  3. 32M内存 跑linux内核,32位Linux单进程4G内存限制
  4. pip错误:TypeError: parse() got an unexpected keyword argument 'transport_encoding'
  5. execCommand 在火狐下正常使用方法
  6. HTML与CSS基础之常用选择器(一)
  7. ASP.NET C# 数字格式化输出
  8. 全国计算机准考证打印2015年,甘肃2015下半年全国计算机等级考试准考证打印时间...
  9. 2021福州地区高考成绩排名查询,2021年福州各高中高考成绩排名及放榜最新消息...
  10. werkzeug response
  11. 西瓜书+实战+吴恩达机器学习(二)机器学习基础(偏差、方差、调试模型技巧)
  12. 机器学习入门笔记总目录
  13. 埃氏筛法求质数(例如:200以内的质数)
  14. powerbi中的合并
  15. Postman设置请求cookie
  16. WKWebView OC与JS交互
  17. IDEA修改中文字体为微软雅黑
  18. 完了!生产事故!几百万消息在消息队列里积压了几个小时!
  19. E - Stripies
  20. 2019高教杯数学建模B题赛后感

热门文章

  1. java项目word转换成pdf并且去除水印
  2. base64 hash256 编码不一致问题
  3. 关于18位身份证号码最后一位计算(Java实现)
  4. linux-关机命令shutdown
  5. element UI select下拉选项位置问题
  6. 应用程序正常初始化(0xc150002)失败
  7. Cacti使用安装详解
  8. 猫和老鼠服务器未响应是怎么回事,猫和老鼠手游怎么玩不了 游戏设置及异常解决方法...
  9. 【UML】— 用例图
  10. iCoremail企业邮箱移动办公新突破