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 相关文章推荐
在Django中使用Sitemap的方法讲解
Jul 22 Python
详解如何利用Cython为Python代码加速
Jan 27 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
Feb 18 Python
django 通过URL访问上传的文件方法
Jul 28 Python
Python拼接字符串的7种方式详解
Mar 19 Python
python实现最速下降法
Mar 24 Python
Python3创建Django项目的几种方法(3种)
Jun 03 Python
如何利用Python写个坦克大战
Nov 18 Python
python实现excel公式格式化的示例代码
Dec 23 Python
Jmeter调用Python脚本实现参数互相传递的实现
Jan 22 Python
Python基于爬虫实现全网搜索并下载音乐
Feb 14 Python
python 爬取腾讯视频评论的实现步骤
Feb 18 Python
利用Python网络爬虫爬取各大音乐评论的代码
用Python制作灯光秀短视频的思路详解
python实现socket简单通信的示例代码
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
python用字节处理文件实例讲解
Apr 13 #Python
Python中相见恨晚的技巧
Apr 13 #Python
利用python做表格数据处理
You might like
给海燕B411配件机起死回生配上件
2021/03/02 无线电
php 无限极分类
2008/03/27 PHP
php 运行效率总结(提示程序速度)
2009/11/26 PHP
php生成随机密码的几种方法
2011/01/17 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
2018/10/14 PHP
js 一个关于图片onload加载的事
2013/11/10 Javascript
JavaScript中实现最高效的数组乱序方法
2014/10/11 Javascript
jQuery实现底部浮动窗口效果
2016/09/07 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
node.js利用redis数据库缓存数据的方法
2017/03/01 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
2017/03/13 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
详解JavaScript 中 if / if...else...替换方式
2018/07/15 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
[01:55]2014DOTA2国际邀请赛快报:国土生病 紧急去医院治疗
2014/07/10 DOTA
举例讲解Python设计模式编程中的访问者与观察者模式
2016/01/26 Python
Django接受前端数据的几种方法总结
2016/11/04 Python
基于python时间处理方法(详解)
2017/08/14 Python
Python中的默认参数实例分析
2018/01/29 Python
python+opencv识别图片中的圆形
2020/03/25 Python
python opencv人脸检测提取及保存方法
2018/08/03 Python
python将txt文件读入为np.array的方法
2018/10/30 Python
Python 基于FIR实现Hilbert滤波器求信号包络详解
2020/02/26 Python
python如何提取英语pdf内容并翻译
2020/03/03 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
Python常用库Numpy进行矩阵运算详解
2020/07/21 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
Converse匡威法国官网:美国著名帆布鞋品牌
2018/12/05 全球购物
校园公益广告语
2014/03/13 职场文书
留学推荐信范文
2014/05/10 职场文书
庆六一文艺汇演活动方案
2014/08/26 职场文书
迎国庆演讲稿
2014/09/15 职场文书
优秀教师申报材料
2014/12/16 职场文书
超市店长竞聘书
2015/09/15 职场文书
Python字符串对齐方法使用(ljust()、rjust()和center())
2021/04/26 Python