电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

Python网络爬虫基础教程 第8章 验证码识别

  • 资源ID:322902064       资源大小:4.16MB        全文页数:70页
  • 资源格式: PPT        下载积分:6金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要6金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

Python网络爬虫基础教程 第8章 验证码识别

第8章 验证码识别Python网络爬虫基础教程学习目标/Target了解验证的分类,能够说出常见验证码的特点掌握字符验证码的识别方法,能够使用ocr实现识别字符验证码的功能熟悉滑动拼图验证码的识别方法,能够使用Selenium实现识别滑动拼图验证码的功能熟悉点选验证码的识别方法,能够使用Selenium结合超级鹰平台实现识别点选验证码的功能章节概述/Summary随着大数据、机器学习、深度学习的兴起,越来越多的企业通过分析数据探索新的发展道路,例如,内容推荐、商品推荐、智慧城市等。虽然通过对大量数据进行分析可以带来一定的商业价值,但越来越多的网站为了保护网站中的数据不被网络爬虫采集,会在网站内容中加入一些防爬虫措施干扰网络爬虫,例如,加入验证码,此时网络爬虫如果想采集数据,则需要对验证码进行处理处理。目录/Contents8.18.2验证码识别实践项目:登录黑马头条后台管理系统验证码识别8.1验证码是指能够区分用户是计算机或人类的公共全自动程序,它因为能够有效防止非人类的用户恶意注册网站,以及频繁采集网页数据等行为,所以成为了很多网站防爬虫的首选方式。起初,验证码只是一张带有随机字符的图片,用户只需要输入图片中的字符即可完成验证,但是这种验证码很容易被网络爬虫识别。为了提升验证码的识别难度,设计人员在原先验证码的基础上添加了一些干扰元素,比如斜线、杂点等。8.1 验证码识别l掌握字符验证码的识别方法,能够使用pytesseract实现识别字符验证码的功能学学习目目标8.1.1 字符字符验证码的的识别8.1.1 字符字符验证码的的识别字符验证码是指将一串随机产生的数字或字母生成一张图片,图片中包含一些干扰元素(如数条直线、数个圆点、扭曲文字、杂点背景),由用户肉眼识别图片中的数字或字母后输入表单提交网站进行验证,一旦验证成功后就可以使用某项功能。相比用户行为的验证码,字符验证码的识别相对简单一些。我们只需要通过字符识别技术获取图片中的字符即可。常见的字符识别技术是OCR技术(Optical Character Recognition,光学字符识别),为了能够在Python程序中使用OCR技术识别字符验证码,我们可以通过两种方式进行实现:Tesseract-OCR(谷歌开发并开源的OCR引擎)和平台OCR(如百度OCR、腾讯OCR)。8.1.1 字符字符验证码的的识别Tesseract-OCR是一个光学字符识别引擎,支持多种操作系统,具有精准度高、灵活性高等特点。它通过训练不仅可以识别出任何字体(只要字体的风格保持不变即可),而且可以识别出任何Unicode字符。8.1.1 字符字符验证码的的识别步骤1步骤2步骤3步骤4访问Tesseract-OCR下载页面访问Tesseract-OCR下载页面,根据自己的计算机配置参数选择相应的安装包下载,这里选择下载Tesseract-OCR v5.0.0。8.1.1 字符字符验证码的的识别步骤2步骤1步骤3步骤4进入License Agreement界面在Welcome to Tesseract-OCR Setup界面中单击Next按钮进入License Agreement界面。8.1.1 字符字符验证码的的识别步骤3步骤1步骤2步骤4进入Choose Users界面在License Agreement界面单击I Agree按钮,进入Choose Users界面。8.1.1 字符字符验证码的的识别步骤4步骤1步骤2步骤3进入Choose Components界面在Choose User界面保持默认配置,单击Next按钮,进入Choose Components界面。8.1.1 字符字符验证码的的识别步骤5步骤6步骤7步骤8进入Choose Install Location界面在Choose Users界面保持默认配置,单击Next按钮,进入Choose Install Location界面。8.1.1 字符字符验证码的的识别步骤6步骤5步骤7步骤8进入Choose Start Menu Folder界面单击Choose Install Location界面的Next按钮,进入Choose Start Menu Folder界面。8.1.1 字符字符验证码的的识别步骤7步骤5步骤6步骤8进入Installation Complete界面单击Choose Start Menu Folder界面Next按钮,进入Installation Complete界面。8.1.1 字符字符验证码的的识别步骤8步骤5步骤6步骤7进入Completing Tesseract-OCR Setup界面单击Installation Complete界面Next按钮,进入Completing Tesseract-OCR Setup界面。8.1.1 字符字符验证码的的识别步骤9步骤10添加到环境变量Tesseract-OCR安装完成之后,还需要将Tesseract-OCR的安装目录和语言包配置到环境变量中。8.1.1 字符字符验证码的的识别步骤9步骤10查看当前Tesseract-OCR的版本号通过在命令行窗口中输入tesseract-v命令,查看当前Tesseract-OCR的版本号,以验证环境变量是否配置成功。8.1.1 字符字符验证码的的识别为了能够调用Tesseract-OCR引擎识别字符验证码,Python中提供了两个库pytesseract和Pillow,其中pytesseract是对Tesseract-OCR的一层封装,它也可以单独作为Tesseract-OCR引擎的调用脚本;Pillow是基于PIL库的一个派生分支,如今已经发展成为比PIL本身更具活力的图像处理库。8.1.1 字符字符验证码的的识别pytesseract和Pillow都是第三方库,可以通过pip工具进行安装。pip install pytesseractpip install Pillow若要使用Tesseract-OCR识别字符验证码,一般分为以下几个步骤。l使用Pillow.Image模块调用open()函数加载图像文件,生成图像对象。l使用pytesseract库调用image_to_string()函数对图像对象进行Tesseract-OCR识别,并将识别后的结果以字符串形式进行返回。8.1.1 字符字符验证码的的识别使用pytesseract和Pillow库识别字符验证码示例如下。from PIL import Image#导入Pillow库中的Image类from pytesseract import pytesseractimage=Image.open(W549.png)text=pytesseract.image_to_string(image)print(text)8.1.1 字符字符验证码的的识别通常情况下,网页上的字符验证码中存在许多干扰线和噪点,因此在未训练的情况下使用Tesseract-OCR的识别效果并不理想。这时可以使用百度OCR识别带有一些干扰元素的字符验证码。在使用百度OCR之前,我们需要先在百度AI开放平台注册应用。下面分别为大家介绍注册应用和使用百度OCR。8.1.1 字符字符验证码的的识别首先,使用百度账号登录百度AI开放平台首页,在该页面顶部的菜单栏中选择“开放能力”“文字识别”“通用文字识别”。8.1.1 字符字符验证码的的识别然后进入通用文字识别页面,单击“通用文字识别”链接,进入通用文字识别页面,在该页面中单击“立即使用”按钮进入“百度智能云-管理中心”页面。8.1.1 字符字符验证码的的识别最后,单击“创建应用”按钮跳转至创建新应用页面,在该页面中根据要求填写新应用的必选项,包括应用名称、接口选择、文字识别包名、应用归属、应用描述等。完成填写后,单击新应用页面底部的“立即创建”按钮可以看到创建完毕的提示信息。8.1.1 字符字符验证码的的识别在使用百度OCR开发程序之前,我们需要查看平台提供的API文档。,具体步骤为在百度智能云-管理中心”页面单击API文档 通用场景文字识别 通用文字识别(高精度版),跳转至通用文字识别(高精度版)的API文档页面。8.1.1 字符字符验证码的的识别以一个字符验证码图片为例,使用百度OCR识别字符验证码图片。字符验证码图片如下所示。8.1.1 字符字符验证码的的识别import base64,requestsdef graphic_verification_code(img_name):api_key=申请的API Key secret_key=申请的Secret Key host=fhttps:/ fcredentials&client_id=api_key&client_secret=secret_key request_url=https:/ f=open(img_name,rb)#二进制方式打开图片文件 img=base64.b64encode(f.read()使用Python和百度OCR识别指定的验证码图片,具体代码如下所示。params=image:img access_token=requests.get(host).json()access_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)if response:print(response.json()if _name_=_main_:graphic_verification_code(dfn5.jpg)8.1.1 字符字符验证码的的识别l熟悉滑动拼图验证码的识别方法,能够使用Selenium实现识别滑动拼图验证码的功能学学习目目标8.1.2 滑滑动拼拼图验证码的的识别8.1.2 滑滑动拼拼图验证码的的识别滑动拼图验证码是一种很常见的行为验证码,用户只需要滑动滑块至正确距离后完成拼图,松开滑块后会自动进入结果验证流程,若验证失败,则滑块回到起始位置;若验证通过,则当前页面会出现相关的提示信息。滑动拼图验证码主要由5部分组成,分别是抠图、滑动、缺口、背景图片、滑轨,其中抠图和缺口的的形状是随机的,缺口的位置是随机的,这意味着用户滑动滑动的距离也是随机的。8.1.2 滑滑动拼拼图验证码的的识别Python中识别滑动拼图验证码的实现思路一般分为5步。获取包含缺口取包含缺口和不包含缺口和不包含缺口的背景的背景图片片计算滑算滑块的偏移的偏移量量生生成滑成滑动轨迹迹使使用用Selenium模模拟滑滑动轨迹迹验证抠图与与缺口位置缺口位置是否重是否重合合123458.1.2 滑滑动拼拼图验证码的的识别l熟悉点选验证码的识别方法,能够使用Selenium结合超级鹰平台实现识别点选验证码的功能学学习目目标8.1.3 点点选验证码的的识别点选验证码是根据验证码弹窗中的文字描述,按顺序单击图片中与文字描述相符的文字完成验证。8.1.3 点点选验证码的的识别需要注意的是,识别点选验证码的第三方平台有很多,在这里我们选择的超级鹰仅用于本案例的演示,请大家谨慎购买或使用。注注册册账号号截截取取验证码使使用超用超级鹰识别单击验证码文文字字注册超级鹰账号使用超级鹰识别点选验证码的文字截取点选验证码图片使用Selenium单击验证码中的文字8.1.3 点点选验证码的的识别以极验验证码官网的点选验证码为例,演示如何使用第三方平台超级鹰和Selenium识别点选验证码。8.1.3 点点选验证码的的识别首先浏览器中访问超级鹰官网。8.1.3 点点选验证码的的识别单击“用户注册”按钮进行注册,账号注册完成之后,可在用户中心查看账号信息,根据提示绑定相关信息便可领取1000题分。8.1.3 点点选验证码的的识别在用户中

注意事项

本文(Python网络爬虫基础教程 第8章 验证码识别)为本站会员(知**)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.