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中使用__slots__方法的详细教程
Apr 28 Python
详解Python 实现元胞自动机中的生命游戏(Game of life)
Jan 27 Python
基于循环神经网络(RNN)实现影评情感分类
Mar 26 Python
pycharm 配置远程解释器的方法
Oct 28 Python
在Python中append以及extend返回None的例子
Jul 20 Python
Python面向对象之Web静态服务器
Sep 03 Python
在tensorflow中设置保存checkpoint的最大数量实例
Jan 21 Python
在django中使用apscheduler 执行计划任务的实现方法
Feb 11 Python
Pygame的程序开始示例代码
May 07 Python
使用openCV去除文字中乱入的线条实例
Jun 02 Python
Python 实现绘制子图及子图刻度的变换等问题
May 31 Python
浅谈Python3中datetime不同时区转换介绍与踩坑
Aug 02 Python
利用Python网络爬虫爬取各大音乐评论的代码
用Python制作灯光秀短视频的思路详解
python实现socket简单通信的示例代码
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
python用字节处理文件实例讲解
Apr 13 #Python
Python中相见恨晚的技巧
Apr 13 #Python
利用python做表格数据处理
You might like
mayfish 数据入库验证代码
2010/04/30 PHP
PHP写的资源下载防盗链类分享
2014/05/12 PHP
2014年最新推荐的10款 PHP 开发框架
2014/08/01 PHP
动态加载js的几种方法
2006/10/23 Javascript
jquery 分页控件实现代码
2009/11/30 Javascript
JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)
2013/12/17 Javascript
js定时器的使用(实例讲解)
2014/01/06 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
javascript实现表格排序 编辑 拖拽 缩放
2015/01/02 Javascript
js实现获取两个日期之间所有日期的方法
2016/06/17 Javascript
文本框只能输入数字的js代码(含小数点)
2016/07/10 Javascript
JavaScript禁止用户多次提交的两种方法
2016/07/24 Javascript
使用vue制作FullPage页面滚动效果
2017/08/21 Javascript
微信小程序实现多选功能
2018/11/04 Javascript
JavaScript判断浏览器运行环境的详细方法
2019/06/30 Javascript
微信小程序工具函数封装
2019/10/28 Javascript
javascript的delete运算符知识点总结
2019/11/19 Javascript
浅析vue-router中params和query的区别
2019/12/24 Javascript
js实现列表向上无限滚动
2020/01/13 Javascript
Vue axios 跨域请求无法带上cookie的解决
2020/09/08 Javascript
[01:03]DOTA2新的征程 你的脚印值得踏上
2014/08/13 DOTA
[01:24:16]2018DOTA2亚洲邀请赛 4.6 全明星赛
2018/04/10 DOTA
python开发之tkinter实现图形随鼠标移动的方法
2015/11/11 Python
python学习之面向对象【入门初级篇】
2017/01/21 Python
pycharm在调试python时执行其他语句的方法
2018/11/29 Python
python实现小球弹跳效果
2019/05/10 Python
python输入多行字符串的方法总结
2019/07/02 Python
Html5 滚动穿透的方法
2019/05/13 HTML / CSS
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
英国时尚女装购物网站:Missguided
2018/08/23 全球购物
汽车销售员如何做职业生涯规划
2014/02/16 职场文书
老人祝寿主持词
2014/03/28 职场文书
《最佳路径》教学反思
2014/04/13 职场文书
临时用工协议书范本
2014/10/29 职场文书
晚会开幕词
2015/01/28 职场文书
使用Pytorch训练two-head网络的操作
2021/05/28 Python