欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > [笔记]自动化中破解验证码

[笔记]自动化中破解验证码

2025/5/4 16:15:39 来源:https://blog.csdn.net/SQtester/article/details/143631507  浏览:    关键词:[笔记]自动化中破解验证码

01需求分析

1.打开一个chrome浏览器

2.输入论坛的网址: http://114.116.2.138:8090/forum.php

3.输入用户名admin

4.输入密码123456

5.点击登录

6.输入验证码

7.再点击登录

02准备工作

selenium环境搭建

参考地址:  https://blog.csdn.net/python_jeff/article/details/139613463

图片

03操作步骤

第1步:导入webdriver模块

图片

  • 前提:安装好selenium 环境

  • 需要了解:python导入语法

图片

第2步:打开chrome浏览器

图片

  • 用webdriver模块的Chrome类,对它实例化

  • Chrome首字符大写的,往往是Python中的类名

  • Chrome()这是一个实例化的过程

第3步:输入网址

图片

  • 字面翻译:使用driver.get()在浏览器上输入一个网址

    http://114.116.2.138:8090/forum.php

  • get是HTTP的一种请求方式

    (引申:学接口的要去懂更多的HTTP请求方式,POST/DELETE/PUT)

  • url的标准格式示例:

图片

第4步:输入用户名|密码|点击登录

图片

  • 要会chrome开发者工具

图片

  • 要有HTML的基础

图片

  • find_element源码

图片

  • 八个定位方法:id、css、xpath是最常用的

    • css参考:

      https://www.w3school.com.cn/cssref/css_selectors.asp

  • xpath参考:

    https://www.w3school.com.cn/xpath/xpath_axes.asp

  • WebElement 是ind_element的返回值,可以在这个元素上输入:

    • send_keys

    • 点击:click

    • 获取文本:text

第5步:验证码输入

获取验证码图片

图片

  • 注意用到了css定位的[属性^=属性开头的值]的语法

  • python读写文件的open方法

    • wb是write,bytes

  • ele_pic.screenshot_as_png:就是当前这个元素的bytes数据

  • 首次运行遇到错误

图片

  • 点击了登录后,弹出这个提示,获取验证码,无法定位

  • 点击操作往往会产生新的页面,新的页面加载的时候会出现延迟,这个时候等待就需要加入!!

  • 引申:selenium的等待

    • 强制:sleep

    • 隐式:implicitly_wait

    • 显式等待:

图片

分析验证码的数据

  • ddddocr的用法

  • 导入ddddocr

  • 实例化

  • 用classiication获取bytes数据的文本

图片

输入验证码

  • 跟前面一样的,不再赘述

图片

第6步:点击弹出框的登录

  • 跟前面一样的,不再赘述

图片

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词