python自动化调用百度api解决验证码


Posted in Python onApril 13, 2021

自动化测试验证码登陆的三种解决方式

1,找开发关闭验证码
2,找开发设置万能验证码
3,使用第三方接口识别验证?不能100%识别,比自己搭建的ocr识别的识别率高很多

具体讲的就是第三种-调用百度云识别验证码:

from selenium import webdriver
from PIL import Image
import base64
import requests
import time

def baidu_api(Verification_code, AK, SK):#Verification_code验证码路径,AK,SK百度云的身份识别码
    chrome.get_screenshot_as_file('reg.png')  # 获取登陆页面的图片
    code_img = chrome.find_element_by_xpath(Verification_code)  # 找到验证码图片的位置
    img = Image.open('reg.png')# 保存图片
    c_img = img.crop((code_img.location['x'], code_img.location['y'], code_img.location['x'] + code_img.size['width'],
                      code_img.location['y'] + code_img.size['height']))  # 截取验证码图片
    c_img.save('reg_code.png')
    host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&' \
            'client_id='+AK+'&' \
            'client_secret='+ SK
    response = requests.get(host)
    token = response.json()['access_token']
    request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"
    f = open('reg_code.png', 'rb')# 二进制方式打开图片文件
    img = base64.b64encode(f.read())
    params = {"image": img}
    access_token = token
    request_url = request_url + "?access_token=" + access_token
    headers = {'content-type': 'application/x-www-form-urlencoded'}
    response = requests.post(request_url, data=params, headers=headers)
    dict_a = response.json()['words_result']
    if response:
        dict_a = eval(str(dict_a)[1:-1])#数据类型的格式转换
        dict_a = dict(dict_a)#转化为字典类型
        dict_a = dict_a['words']
        dict_a = "".join(dict_a.split())  # 使用一个空字符串合成列表内容生成新的字符串
        dict_a = dict_a.lower()#把大写字母改为小写字母
        return dict_a
    else:
        chrome.refresh()

chrome = webdriver.Chrome()#浏览器实例化
chrome.maximize_window()#最大化浏览器
chrome.get('自己登陆的网址')
test = baidu_api(Verification_code, AK, SK)#返回识别的验证码
chrome = webdriver.Chrome()
print(test)#验证码

百度云AK,SK的获取:
进入:百度云
点击立即使用——进行登陆——实名认证。

python自动化调用百度api解决验证码

按着自己的需求选着,免费的基本上就够用了

python自动化调用百度api解决验证码

这就是自己的AK和SK

然后写入在代码里给AK和SK就行了

到此这篇关于python自动化调用百度api解决验证码的文章就介绍到这了,更多相关python调用百度api验证码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python下singleton模式的实现方法
Jul 16 Python
Python中的super()方法使用简介
Aug 14 Python
利用python微信库itchat实现微信自动回复功能
May 18 Python
Python中的__slots__示例详解
Jul 06 Python
pandas全表查询定位某个值所在行列的方法
Apr 12 Python
Python使用pymysql从MySQL数据库中读出数据的方法
Jul 25 Python
Python 实现数据结构-循环队列的操作方法
Jul 17 Python
Python实现计算长方形面积(带参数函数demo)
Jan 18 Python
使用celery和Django处理异步任务的流程分析
Feb 19 Python
Django REST Swagger实现指定api参数
Jul 07 Python
pytorch 计算Parameter和FLOP的操作
Mar 04 Python
Python中的socket网络模块介绍
Jul 23 Python
利用Python网络爬虫爬取各大音乐评论的代码
用Python制作灯光秀短视频的思路详解
python实现socket简单通信的示例代码
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
python用字节处理文件实例讲解
Apr 13 #Python
Python中相见恨晚的技巧
Apr 13 #Python
利用python做表格数据处理
You might like
xml在joomla表单中的应用详解分享
2012/07/19 PHP
php 批量生成html,txt文件的实现代码
2013/06/26 PHP
一个简单且很好用的php分页类
2013/10/26 PHP
PHP自定义函数获取URL中一级域名的方法
2016/08/23 PHP
PHP常用函数总结(180多个)
2016/12/25 PHP
Nigma vs Alliance BO5 第三场2.14
2021/03/10 DOTA
JS随即打乱数组实现代码
2012/12/03 Javascript
jquery实现倒计时功能
2015/12/28 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
javascript之Array 数组对象详解
2016/06/07 Javascript
JavaScript实现类似淘宝的购物车效果
2017/03/16 Javascript
使用clipboard.js实现复制功能的示例代码
2017/10/16 Javascript
Vue根据条件添加click事件的方式
2019/11/09 Javascript
JS实现扫码枪扫描二维码功能
2020/01/03 Javascript
详解JavaScript作用域、作用域链和闭包的用法
2020/09/03 Javascript
[04:48]DOTA2亚洲邀请赛林书豪为VGJ加油
2017/04/01 DOTA
[58:54]EG vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
通过实例浅析Python对比C语言的编程思想差异
2015/08/30 Python
利用Python爬取微博数据生成词云图片实例代码
2017/08/31 Python
python 判断参数为Nonetype类型或空的实例
2018/10/30 Python
python爬虫增加访问量的方法
2019/08/22 Python
Python 保存加载mat格式文件的示例代码
2020/08/04 Python
Python pysnmp使用方法及代码实例
2020/08/24 Python
Parts Express:音频、视频和扬声器的第一来源
2017/04/25 全球购物
Jeep牧马人、切诺基和自由人零配件:4 Wheel Drive Hardware
2017/07/02 全球购物
中专药剂专业应届毕的自我评价
2013/12/27 职场文书
物流专业求职计划书
2014/01/10 职场文书
业务员的岗位职责
2014/03/15 职场文书
买卖车协议书
2014/04/21 职场文书
公司年底活动方案
2014/08/17 职场文书
行政秘书工作自我鉴定
2014/09/15 职场文书
个人融资协议书
2014/10/02 职场文书
2014年销售助理工作总结
2014/12/01 职场文书
现场施工员岗位职责
2015/04/11 职场文书
对PyTorch中inplace字段的全面理解
2021/05/22 Python
详解Spring Security如何在权限中使用通配符
2022/06/28 Java/Android