CN106095918A - 一种基于ocr技术的网络受保护指数数据的获取方法 - Google Patents
一种基于ocr技术的网络受保护指数数据的获取方法 Download PDFInfo
- Publication number
- CN106095918A CN106095918A CN201610405523.3A CN201610405523A CN106095918A CN 106095918 A CN106095918 A CN 106095918A CN 201610405523 A CN201610405523 A CN 201610405523A CN 106095918 A CN106095918 A CN 106095918A
- Authority
- CN
- China
- Prior art keywords
- data
- target data
- character
- image
- acquisition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Character Discrimination (AREA)
Abstract
本发明涉及一种基于OCR技术的网络受保护指数数据的获取方法,本发明首先利用自动化测试工具,模拟指数数据显示之前用户在数据平台的一系列操作,如登录、输入搜索关键词、设置搜索时间等。然后利用模拟鼠标移动,进行曲线上值的动态显示和采集,最后,利用改进的OCR技术实现目标数据的数值获取。通过本发明所述方法获取的受保护数据,具有获取效率高、获取数据准确和可批量获取等特点,可以用于为舆情分析和数据挖掘提供了有效的数据支撑,为网络大数据获取方法提出了一种新思路,同时为商业推广、精准营销以及市场分析等提供了有价值的信息。具有重要的理论意义和广泛的应用价值。
Description
技术领域
本发明涉及一种基于OCR技术的网络受保护指数数据的获取方法,属于网络通讯技术领域。
背景技术
OCR技术是光学字符识别的缩写(Optical Character Recognition),是通过扫描等光学输入方式将各种票据、报刊、书籍、文稿及其它印刷品的文字转化为图像信息,再利用文字识别技术将图像信息转化为可以使用的计算机输入技术。
OCR技术识别图像中字符的过程可以概括为图像预处理、字符特征提取、对比字体字典,这是OCR核心的三个过程。其中,字符特征提取最重要,该过程首先对要识别的字符序列进行行或字切分,从图像中分离出单个字符,然后,从单字符图像中提取统计特征和结构特征;接下来利用抽取出的字符特征,与已有的特征库即字体字典进行比对,选择匹配度最高的字符作为输出。
Web上数据类型主要分为最常见的文本数据类型、图片类型和音视频流数据。传统网络爬虫爬取的数据的方法有两种:第一类方法是基于URL的目标站点加载技术的Web数据获取方法;第二类方法是基于开放平台SDK接口调用技术的Web数据获取方法。
第一类方法以目标资源URL作为起点,访问URL站点的数据,这些URL站点通常不需要授权或登录即可看到目标数据。这些数据以文本数据居多,如HTML页面源代码、URL地址、字符数字序列等。而且传统Web数据大多是结构化数据,如HTML页面或XML数据通过标签元素组织内容;JSON数据类型由自定义的数组和对象构成;URL地址以万维网联盟的互联网标准RFC1738制定的规范来定位网络资源。
爬取到数据后只需要做简单的处理就可以直接使用,比如对于HTML页面源代码,关键数据会包含在HTML标签中,可以使用XPath语言或CSS选择器即可定位到具体标签内容;对于URL地址数据,使用正则表达式可以提取URL地址的协议、主机地址、资源名、查询参数等信息。
但是,网络受保护的数据的加载方式通常是动态延时加载,即只在需要显示的时候加载,第一类方法很难获取并识别具有受保护网络数据特点(权限验证,动态加载,图片格式数据)的目标数据。
第二类Web数据的获取方法是基于网络开放平台提供的SDK,进行模拟应用开发,通过频繁调用数据的API接口进行数据的获取。该类方法的优点是获取的Web数据是结构化的数据,性能稳定,获取效率高。但是,第二类方法也存在一定的缺点:首先,对于获取的权限分级明显,如果没有获得较高的权限,调用接口的次数会大大降低,获取的效率也会大大降低。其次,获取的内容相对固定,缺少灵活性。第三,获取的数据格式以文本为主,大多数数据需要二次爬取。
Google在维护的开源OCR引擎Tesseract-OCR支持对包括中文在内的100多种语言的识别。然而,经过多次利用Tesseract-OCR测试发现,在识别数字类图像的时候,失败的总是固定的几个数字,OCR识别失败举例如表1所示:表1中为Tesseract-OCR识别的识别率较高的失败的数字。
表1
正确值 | 识别值 | 原因 |
13098 | 13093 | 行尾8识别为3 |
12218 | 12213 | 行尾8识别为3 |
692738 | 692788 | 行中3识别为8 |
772614 | ?72614 | 行首7无法识别 |
862587 | 86258? | 行尾7无法识别 |
现有技术中还提出了一种基于曲线推算的受保护指数数据的获取技术,该技术主要是通过采集目标数据的曲线,而后进行图像预处理和曲线点的定位和数值的计算,实现该类数据的获取。但是该方法的结果准确度较低,具有一定的误差。
发明内容
针对现有技术的不足,本发明提供了一种基于OCR技术的网络受保护指数数据的获取方法;本发明包括:目标数据的加载,目标的数据图像的自动采集和采用OCR技术的获取网络受保护指数数据。
本发明面向受保护网站指数数据(百度指数,360指数,腾讯视频指数等)的获取,本发明首先利用自动化测试工具,模拟指数数据显示之前用户在数据平台的一系列操作,如登录、输入搜索关键词、设置搜索时间等。然后利用模拟鼠标移动,进行曲线上值的动态显示和采集,最后,利用改进的OCR技术实现目标数据的数值获取。本发明通过OCR技术,更加准确的实现受保护指数数据的获取和识别,通过自动化测试技术,实现动态页面加载过程中,模拟点击或鼠标移动,实现目标数值数据的加载和图像采集。
术语解释
Cookie:指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密);
移动步长step,是指鼠标单次移动的距离;
日期总数days,是指开始日期与结束日期之间的总天数;
图表元素element,是指指数数据的曲线图、折线图等。
发明概述
一种基于OCR技术的网络受保护指数数据的获取方法,该方法包括如下步骤:(1)目标数据网站半监督形式登录;(2)基于自动测试技术的目标数据定位与获取,实现目标数据的图像获取;(3)目标数据的图像的预处理,实现目标数据图像的去噪和识别前的数据准备;(4)基于改进的OCR(光学字符识别)技术,实现目标图像数据的识别;(5)对识别的目标数据进行结构化处理并通过推算方法进行校验;(6)完成目标数据的存储。
经过上述方法获取的受保护数据,具有获取效率高、获取数据准确和可批量获取等特点,可以用于为舆情分析和数据挖掘提供了有效的数据支撑,为网络大数据获取方法提出了一种新思路,同时为商业推广、精准营销以及市场分析等提供了有价值的信息,具有重要的理论意义和广泛的应用价值。
本发明的技术方案为:
一种基于OCR技术的网络受保护指数数据的获取方法,具体步骤包括:
(1)目标数据网站登录;
(2)目标数据定位与获取:利用自动化测试工具Selenium Webdriver,模拟目标数据显示之前用户在数据平台的操作;例如,登录,输入搜索关键词,设置搜索时间等。加载目标数据的图像,并利用模拟鼠标移动的方法,对目标数据的图像中曲线上的数据值进行动态加载和采集存储;
(3)目标数据预处理:对目标数据的图像进行预处理;
由于指数数据获取方法中都是针对图像数据进行处理,图像的质量对最终结果的准确度至关重要。图像预处理的目的是提高关键数据在图像中的可识别度,降低其它无用信息对关键数据的干扰。由于网络受保护指数数据需要最终展示给用户,采用的字体都比较规范清晰,也不会在图像中加入过多噪音。所以,该部分图像预处理使用基本的二值化、缩放等处理即可满足要求。
(4)目标数据识别与存储:利用改进的OCR技术进行目标数据识别与存储:
a、自定义字体样本:针对识别容易失败的字符及非常用的字体,扩大切分框,使切分框完全包围识别容易失败的字符及非常用的字体,且不与识别容易失败的字符及非常用的字体的像素重合,识别容易失败的字符包括8、3、7、11;非常用的字体,例如,倾斜体、扭曲体、手写体等;
通过自定义字体样本提高识别的准确度,由于字体样本用于切分字符,它记录着目标数据的图像中不同字符的位置、尺寸等信息。针对识别失败的字符,扩大其切分框,使切分框完全包围字符又不与字符像素重合,对多个识别失败的数据做重复操作,最终形成一类新的字体样本。
b、采用步骤a自定义的字体样本对步骤(3)预处理后的目标数据的图像中要识别的字符序列进行行或字切分,分离出单个字符;
c、对单个字符提取统计特征和结构特征;
d、将步骤c提取出的字符的统计特征和结构特征,与已有的特征库即字体字典进行比对,选择匹配度最高的字符进行输出;
(5)对步骤(4)输出的字符进行校验。
根据本发明优选的,所述步骤(2)中目标数据定位,具体步骤包括:
S1、目标数据关键参数的计算和设定,包括:通过正则表达式在URL中进行识别,获取目标数据搜索开始时间和结束时间,计算出目标数据的日期总数days;根据目标数据的日期总数days和通过自动化测试工具Selenium Webdriver获取的图表元素element的宽度element.width,计算目标数据的移动步长step,即:step=Math.round(element.width/(days-1));Math.round()为四舍五入取整函数,设定鼠标移动的初始索引index=1;
S2、利用自动化测试工具Selenium Webdriver,移动鼠标至第(index-1)*step个位置处;
S3、定位目标数据元素,通过自动化测试工具Selenium Webdriver,实现服务器的数据请求,等待服务器响应加载,若加载失败,进入步骤S4,若加载成功,采集目标数据的图像,进入步骤S5;
S4、判断重试次数是否超出重试最大次数,如果没有超出,返回步骤S3,否则,跳出该步骤,返回步骤(1);
S5、判断index是否小于目标数据的日期总数days,如果是,index加1,返回步骤S2;否则,结束。
根据本发明优选的,步骤(1)中,所述目标网站登录为目标数据网站半监督形式登录,包括登录目标数据所在站点、定位利用延时加载策略下的目标数据,具体步骤包括:
①利用网络抓包工具,获取正常登录目标数据所在站点时的Cookie信息,Cookie信息包括用户名、密码、浏览过的网页、停留的时间;
浏览器首次发送请求时会获取到服务器返回的Cookie信息并存入本地,此后浏览器向同一服务器发送的所有请求都将携带该Cookie信息。网站服务器在响应每一次请求时都可以对Cookie信息进行修改,并重新写入浏览器本地的文件系统。网站在用户登录时,会产生标识已登录的信息,并修改Cookie信息。所以,依据登录后的其他请求,服务器能够识别当前用户。根据这一特性,本发明利用网络抓包工具获取正常登录数据平台时的Cookie信息,在下一次请求时附带上Cookie信息便可以绕过数据爬取前登录操作。
②附带上Cookie信息绕过登录过程,直接进入登录页面,输入用户名、密码、验证码,检查用户名、密码、验证码是否输入,如果输入,进入步骤④;否则,进入步骤③;
由于Cookie信息是有效期的,过期的Cookie信息无法登录到数据平台中。为了使登录过程可以稳定、长期有效地运行,因此,本发明使用需要用户配合的登录方法。登录过程最大的问题是验证码问题,验证码图片本身加入了很多噪音信息,由不同字体的字母、数字经过旋转、拉伸等变换形成,可识别度很低。而让用户识别并输入验证码可以保证成功登录。
③判断是否到达重试次数a1,如果是,当前关键词爬取失败,调至下一关键词;否则,等待固定时间t1后进入步骤②;
加入等待固定时间的目的便是为了给用户留出输入用户名等信息的时间,之所以中间的流程中还需要判断是否达到重试次数,是防止用户在某一次等待时间内没能成功输入用户信息,或验证码输入错误,增加重试的次数能保证用户准确的完成输入。
④设置关键词进行搜索,搜索过程中判断等待响应时间是否达到t2,如果未达到,则继续下一步操作,如果达到,进入步骤⑤;
⑤判断是否达到重试次数a2,如果是的话,则重试失败,否则,进入步骤④。
重试次数a1、重试次数a2、等待固定时间t1、t2均是经验值,与目标数据网站以及网络环境有关,均是可调参数,可以根据具体的抓取情况进行设定。
受保护指数数据爬取过程中,都是按照严格的先后顺序执行的。针对数据定位的每个操作也是如此,即登录、设置搜索关键词、设置日期后提交数据进行搜索,必须等待页面数据显示后才可以进行下一步的图像采集。由于网页的加载受网络带宽、网站服务器反爬虫机制等因素影响,网页数据很难在短时间加载完毕。因此,本发明提出了一种延迟页面超时重加载策略,通过该策略,实现网页数据的完整加载,为下一步的目标数据的图像提取提供完整且准确的数据。
根据本发明优选的,所述对目标数据的图像进行预处理,包括:锐化、钝化、模糊、二值化、缩放、灰度化处理。
本发明最终是利用OCR技术进行目标数据的识别,因此,在OCR的识别过程中,对于不同类型的识别内容其过程也会有差异。针对网络受限指数数据而言,其要识别的字符主要以数字为主,也会有少量标点符号,例如千位分隔符;结构上,通常以单行字符的形式显示,一般也不会出现倾斜的情况;因为指数数据需要频繁的查看,数据平台不会像验证码一样加入太多图像噪音。所以对于网络受限指数数据的OCR过程,识别效率和精确度应该都可以保证。
本发明对爬取到得指数数据进行图像预处理,根据图表元素布局和色彩分布的特点,需要执行不同处理。本发明基于图像采集数据的特点,重点进行图像的二值化处理,为OCR的识别最优的图像基础。对于关键信息与其他信息颜色差异明显的图像,可以进行二值化处理,二值化将图像所有像素的灰度值设置为0或255,即将图像呈现出明显的只有黑白单色的效果。这样处理可以突出关键信息,减少干扰关键信息的噪音数据,我们可以自定义一个颜色阈值,所有在阈值范围内的像素点全部设置为黑或白色,阈值范围以外的像素点设置为相反的颜色。
本发明的有益效果为:
1、智能的数据自动定位技术:本发明通过利用自动化测试技术实现了对页面的模拟操作,从而能够完成对目标数据的智能定位和记载。该方法具有创新性,现有的数据获取方法中还没有出现类似的方法。
2、面向特定类型图像的改进的OCR技术:本发明在利用OCR技术识别目标数据的时候,根据目标数据的特点,创建了自定义的字体样本库进行OCR技术的改进,提高了数据的识别准确率。
3、全新的数据获取识别流程:本发明创新性的提出了面向图像数据的获取和识别解决方案,为数据获取技术提出了一个全新的方向。
4、通过本发明所述方法获取的受保护数据,具有获取效率高、获取数据准确和可批量获取等特点,可以用于为舆情分析和数据挖掘提供了有效的数据支撑,为网络大数据获取方法提出了一种新思路,同时为商业推广、精准营销以及市场分析等提供了有价值的信息。具有重要的理论意义和广泛的应用价值。
附图说明
图1为本发明所述一种基于OCR技术的网络受保护指数数据的获取方法的流程框图;
图2为目标网站登录的流程示意图;
图3为目标数据定位的流程示意图。
具体实施方式
下面结合说明书附图和实施例对本发明作进一步限定,但不限于此。
实施例
一种基于OCR技术的网络受保护百度指数的获取方法,如图1所示,具体步骤包括:
(1)目标数据网站登录;
(2)目标数据定位与获取:利用自动化测试工具Selenium Webdriver,模拟目标数据显示之前用户在数据平台的操作;例如,登录,输入搜索关键词,设置搜索时间等。加载目标数据的图像,并利用模拟鼠标移动的方法,对目标数据的图像中曲线上的数据值进行动态加载和采集存储;
(3)目标数据预处理:对目标数据的图像进行预处理;
(4)目标数据识别与存储:利用改进的OCR技术进行目标数据识别与存储:
a、自定义字体样本:针对识别容易失败的字符及非常用的字体,扩大切分框,使切分框完全包围识别容易失败的字符及非常用的字体,且不与识别容易失败的字符及非常用的字体的像素重合,识别容易失败的字符包括8、3、7、11;非常用的字体,例如,倾斜体、扭曲体、手写体等;
通过自定义字体样本提高识别的准确度,由于字体样本用于切分字符,它记录着目标数据的图像中不同字符的位置、尺寸等信息。针对识别失败的字符,扩大其切分框,使切分框完全包围字符又不与字符像素重合,对多个识别失败的数据做重复操作,最终形成一类新的字体样本。
b、采用步骤a自定义的字体样本对步骤(3)预处理后的目标数据的图像中要识别的字符序列进行行或字切分,分离出单个字符;
c、对单个字符提取统计特征和结构特征;
d、将步骤c提取出的字符的统计特征和结构特征,与已有的特征库即字体字典进行比对,选择匹配度最高的字符进行输出;
(5)对步骤(4)输出的字符进行校验。
步骤(1)中,所述目标网站登录为目标数据网站半监督形式登录,包括登录目标数据所在站点、定位利用延时加载策略下的目标数据,如图2所示,具体步骤包括:
①利用网络抓包工具,获取正常登录目标数据所在站点时的Cookie信息,Cookie信息包括用户名、密码、浏览过的网页、停留的时间;
浏览器首次发送请求时会获取到服务器返回的Cookie信息并存入本地,此后浏览器向同一服务器发送的所有请求都将携带该Cookie信息。网站服务器在响应每一次请求时都可以对Cookie信息进行修改,并重新写入浏览器本地的文件系统。网站在用户登录时,会产生标识已登录的信息,并修改Cookie信息。所以,依据登录后的其他请求,服务器能够识别当前用户。根据这一特性,本发明利用网络抓包工具获取正常登录数据平台时的Cookie信息,在下一次请求时附带上Cookie信息便可以绕过数据爬取前登录操作。
②附带上Cookie信息绕过登录过程,直接进入登录页面,输入用户名、密码、验证码,检查用户名、密码、验证码是否输入,如果输入,进入步骤④;否则,进入步骤③;
由于Cookie信息是有效期的,过期的Cookie信息无法登录到数据平台中。为了使登录过程可以稳定、长期有效地运行,因此,本发明使用需要用户配合的登录方法。登录过程最大的问题是验证码问题,验证码图片本身加入了很多噪音信息,由不同字体的字母、数字经过旋转、拉伸等变换形成,可识别度很低。而让用户识别并输入验证码可以保证成功登录。
③判断是否到达重试次数a1,如果是,当前关键词爬取失败,调至下一关键词;否则,等待固定时间t1后进入步骤②;
加入等待固定时间的目的便是为了给用户留出输入用户名等信息的时间,之所以中间的流程中还需要判断是否达到重试次数,是防止用户在某一次等待时间内没能成功输入用户信息,或验证码输入错误,增加重试的次数能保证用户准确的完成输入。
④设置关键词进行搜索,搜索过程中判断等待响应时间是否达到t2,如果未达到,则继续下一步操作,如果达到,进入步骤⑤;
⑤判断是否达到重试次数a2,如果是的话,则重试失败,否则,进入步骤④。
重试次数a1、重试次数a2、等待固定时间t1、t2均是经验值,与目标数据网站以及网络环境有关,均是可调参数,可以根据具体的抓取情况进行设定。
百度指数爬取过程中,都是按照严格的先后顺序执行的。针对数据定位的每个操作也是如此,即登录、设置搜索关键词、设置日期后提交数据进行搜索,必须等待页面数据显示后才可以进行下一步的图像采集。由于网页的加载受网络带宽、网站服务器反爬虫机制等因素影响,网页数据很难在短时间加载完毕。因此,本发明提出了一种延迟页面超时重加载策略,通过该策略,实现网页数据的完整加载,为下一步的目标数据的图像提取提供完整且准确的数据。
所述步骤(2)中目标数据定位,如图3所示,具体步骤包括:
S1、目标数据关键参数的计算和设定,包括:通过正则表达式在URL中进行识别,获取目标数据搜索开始时间和结束时间,计算出目标数据的日期总数days;根据目标数据的日期总数days和通过自动化测试工具Selenium Webdriver获取的图表元素element的宽度element.width,计算目标数据的移动步长step,即:step=Math.round(element.width/(days-1));Math.round()为四舍五入取整函数,设定鼠标移动的初始索引index=1;
S2、利用自动化测试工具Selenium Webdriver,移动鼠标至第(index-1)*step个位置处;
S3、定位目标数据元素,通过自动化测试工具Selenium Webdriver,实现服务器的数据请求,等待服务器响应加载,若加载失败,进入步骤S4,若加载成功,采集目标数据的图像,进入步骤S5;
S4、判断重试次数是否超出重试最大次数,如果没有超出,返回步骤S3,否则,跳出该步骤,返回步骤(1);
S5、判断index是否小于目标数据的日期总数days,如果是,index加1,返回步骤S2;否则,结束。
所述对目标数据的图像进行预处理,包括:锐化、钝化、模糊、二值化、缩放、灰度化处理。
本发明最终是利用OCR技术进行目标数据的识别,因此,在OCR的识别过程中,对于不同类型的识别内容其过程也会有差异。针对网络受限指数数据而言,其要识别的字符主要以数字为主,也会有少量标点符号,例如千位分隔符;结构上,通常以单行字符的形式显示,一般也不会出现倾斜的情况;因为指数数据需要频繁的查看,数据平台不会像验证码一样加入太多图像噪音。所以对于网络受限指数数据的OCR过程,识别效率和精确度应该都可以保证。
本发明对爬取到得指数数据进行图像预处理,根据图表元素布局和色彩分布的特点,需要执行不同处理。本发明基于图像采集数据的特点,重点进行图像的二值化处理,为OCR的识别最优的图像基础。对于关键信息与其他信息颜色差异明显的图像,可以进行二值化处理,二值化将图像所有像素的灰度值设置为0或255,即将图像呈现出明显的只有黑白单色的效果。这样处理可以突出关键信息,减少干扰关键信息的噪音数据,我们可以自定义一个颜色阈值,所有在阈值范围内的像素点全部设置为黑或白色,阈值范围以外的像素点设置为相反的颜色。
本实施例所述方法通过对百度指数爬取进行了实际运行测试,设定不同的测试指标,进行多次测试,根据测试结果总结该方案具有可用性。
通过最终的测试,对于截图成功率和截图准确率的测试我们针对优化前后做了两组实验。
第一组实验爬取了“保健”、“互联网”、“雾霾”、“出国劳务”各词,从2015年1月1日开始的不同日期跨度的百度指数。截图成功率如表2所示:截图成功率表示所截图数量是否能与实际要抓取的指数个数对应起来。此指标仅面向精确模式。
表2
从以上的测试结果可以看出软件截图数量和对应天数能很好地对应起来,截图数量可以保证,截图成功率在12个月及以下的时间跨度内达到100%,在时间跨度长达49个月时,截图成功率页高达为99.7%,误差率极低。并且,分析失败的截图发现,4个失败的截图中有三个截图是乱序字母数字构成,基本可以推断是由于后期优化的时候增加了主动发送图片请求导致的,但正常情况不会发生该问题。4个失败截图中的另一个截到的是空白图片,初步推断该问题是由于百度指数漂浮框元素更替频繁,在截图的瞬间元素发生变化,指数消失所致。
第二组实验我们选取不同频次的关键词,因为频次不同的关键词百度指数长度不同,能有效的测试本发明的准确率。我们将频次分为低、中、高三个等级,低频关键词在0-1000范围,中频关键词在1000-100000范围,高频关键词搜索次数在10万以上。低频关键词我们选择“无觅网”、“屌丝”(2011年数据),中频关键词有“孔雀东南飞”、“平凡的世界”,高频关键词有“NBA”、“快乐大本营”。截图准确率如表3所示:截图准确率表示将截到的图片与百度指数平台页面上显示的真实值进行比较,计算准确程度。此指标仅面向精确模式。
表3
由表3可得,采用本实施例所述方法,准确率高达100%,对于表3中的测试数据需要说明的时,“孔雀东南飞”一词出现了两次识别失败的情况,原因并不在于没有识别,而是爬取问题,一个爬取图片中没有数字,另一个数字是乱码,也就是说识别率可以近似认为是100%,这也充分说明经过字体训练后的识别效率明显提高。
Claims (4)
1.一种基于OCR技术的网络受保护指数数据的获取方法,其特征在于,具体步骤包括:
(1)目标数据网站登录;
(2)目标数据定位与获取:利用自动化测试工具Selenium Webdriver,模拟目标数据显示之前用户在数据平台的操作;加载目标数据的图像,并利用模拟鼠标移动的方法,对目标数据的图像中曲线上的数据值进行动态加载和采集存储;
(3)目标数据预处理:对目标数据的图像进行预处理;
(4)目标数据识别与存储:利用改进的OCR技术进行目标数据识别与存储:
a、自定义字体样本:针对识别容易失败的字符及非常用的字体,扩大切分框,使切分框完全包围识别容易失败的字符及非常用的字体,且不与识别容易失败的字符及非常用的字体的像素重合,识别容易失败的字符包括8、3、7、11;
b、采用步骤a自定义的字体样本对步骤(3)预处理后的目标数据的图像中要识别的字符序列进行行或字切分,分离出单个字符;
c、对单个字符提取统计特征和结构特征;
d、将步骤c提取出的字符的统计特征和结构特征,与已有的特征库即字体字典进行比对,选择匹配度最高的字符进行输出;
(5)对步骤(4)输出的字符进行校验。
2.根据权利要求1所述的一种基于OCR技术的网络受保护指数数据的获取方法,其特征在于,所述步骤(2)中目标数据定位,具体步骤包括:
S1、目标数据关键参数的计算和设定,包括:通过正则表达式在URL中进行识别,获取目标数据搜索开始时间和结束时间,计算出目标数据的日期总数days;根据目标数据的日期总数days和通过自动化测试工具Selenium Webdriver获取的图表元素element的宽度element.width,计算目标数据的移动步长step,即:step=Math.round(element.width/(days-1));Math.round()为四舍五入取整函数,设定鼠标移动的初始索引index=1;
S2、利用自动化测试工具Selenium Webdriver,移动鼠标至第(index-1)*step个位置处;
S3、定位目标数据元素,通过自动化测试工具Selenium Webdriver,实现服务器的数据请求,等待服务器响应加载,若加载失败,进入步骤S4,若加载成功,采集目标数据的图像,进入步骤S5;
S4、判断重试次数是否超出重试最大次数,如果没有超出,返回步骤S3,否则,跳出该步骤,返回步骤(1);
S5、判断index是否小于目标数据的日期总数days,如果是,index加1,返回步骤S2;否则,结束。
3.根据权利要求1所述的一种基于OCR技术的网络受保护指数数据的获取方法,其特征在于,步骤(1)中,所述目标网站登录为目标数据网站半监督形式登录,包括登录目标数据所在站点、定位利用延时加载策略下的目标数据,具体步骤包括:
①利用网络抓包工具,获取正常登录目标数据所在站点时的Cookie信息,Cookie信息包括用户名、密码、浏览过的网页、停留的时间;
②附带上Cookie信息绕过登录过程,直接进入登录页面,输入用户名、密码、验证码,检查用户名、密码、验证码是否输入,如果输入,进入步骤④;否则,进入步骤③;
③判断是否到达重试次数a1,如果是,当前关键词爬取失败,调至下一关键词;否则,等待固定时间t1后进入步骤②;
④设置关键词进行搜索,搜索过程中判断等待响应时间是否达到t2,如果未达到,则继续下一步操作,如果达到,进入步骤⑤;
⑤判断是否达到重试次数a2,如果是的话,则重试失败,否则,进入步骤④。
4.根据权利要求1所述的一种基于OCR技术的网络受保护指数数据的获取方法,其特征在于,所述对目标数据的图像进行预处理,包括:锐化、钝化、模糊、二值化、缩放、灰度化处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610405523.3A CN106095918B (zh) | 2016-06-06 | 2016-06-06 | 一种基于ocr技术的网络受保护指数数据的获取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610405523.3A CN106095918B (zh) | 2016-06-06 | 2016-06-06 | 一种基于ocr技术的网络受保护指数数据的获取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106095918A true CN106095918A (zh) | 2016-11-09 |
CN106095918B CN106095918B (zh) | 2020-03-06 |
Family
ID=57228567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610405523.3A Active CN106095918B (zh) | 2016-06-06 | 2016-06-06 | 一种基于ocr技术的网络受保护指数数据的获取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106095918B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107871128A (zh) * | 2017-12-11 | 2018-04-03 | 广州市标准化研究院(广州市组织机构代码管理中心) | 一种基于svg动态图表的高鲁棒性图像识别方法 |
CN107909068A (zh) * | 2017-11-24 | 2018-04-13 | 苏州灯蓝软件科技有限公司 | 一种大数据图像曲线反向解析方法及系统 |
CN109543454A (zh) * | 2019-01-25 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 一种反爬虫方法及相关设备 |
CN109614532A (zh) * | 2018-11-26 | 2019-04-12 | 上海阿米特数据系统有限公司 | 一种零售网站数据自动获取系统 |
CN109685053A (zh) * | 2018-12-18 | 2019-04-26 | 北京天融信网络安全技术有限公司 | 训练文字识别系统的方法、装置、存储介质及电子设备 |
CN111753494A (zh) * | 2020-07-06 | 2020-10-09 | 浪潮卓数大数据产业发展有限公司 | 基于selenium的woff字体解密方法及系统 |
CN112100547A (zh) * | 2020-11-10 | 2020-12-18 | 北京数智新天信息技术咨询有限公司 | 一种页面数据采集的方法、装置及电子设备 |
CN112257100A (zh) * | 2020-07-30 | 2021-01-22 | 北京沃东天骏信息技术有限公司 | 敏感数据保护效果的检测方法、装置及存储介质 |
CN113449169A (zh) * | 2021-09-01 | 2021-09-28 | 广州越创智数信息科技有限公司 | 一种基于rpa的舆情数据获取方法及系统 |
CN115292647A (zh) * | 2022-10-08 | 2022-11-04 | 北京易特思维信息技术有限公司 | 一种非侵入式政务数据的获取方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788849A (zh) * | 2009-12-31 | 2010-07-28 | 优视科技有限公司 | 一种用于移动通讯设备系统的光学字符识别输入方法 |
CN101807192A (zh) * | 2009-12-31 | 2010-08-18 | 优视科技有限公司 | 一种用于移动通讯设备终端的网页页面光学字符识别处理方法 |
CN103514171A (zh) * | 2012-06-20 | 2014-01-15 | 同程网络科技股份有限公司 | 基于光学字符识别与垂直搜索的自定义爬虫方法 |
CN104156706A (zh) * | 2014-08-12 | 2014-11-19 | 华北电力大学句容研究中心 | 一种基于光学字符识别技术的中文字符识别方法 |
CN104933138A (zh) * | 2015-06-16 | 2015-09-23 | 携程计算机技术(上海)有限公司 | 网页爬虫系统及网页爬取方法 |
-
2016
- 2016-06-06 CN CN201610405523.3A patent/CN106095918B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788849A (zh) * | 2009-12-31 | 2010-07-28 | 优视科技有限公司 | 一种用于移动通讯设备系统的光学字符识别输入方法 |
CN101807192A (zh) * | 2009-12-31 | 2010-08-18 | 优视科技有限公司 | 一种用于移动通讯设备终端的网页页面光学字符识别处理方法 |
CN103514171A (zh) * | 2012-06-20 | 2014-01-15 | 同程网络科技股份有限公司 | 基于光学字符识别与垂直搜索的自定义爬虫方法 |
CN104156706A (zh) * | 2014-08-12 | 2014-11-19 | 华北电力大学句容研究中心 | 一种基于光学字符识别技术的中文字符识别方法 |
CN104933138A (zh) * | 2015-06-16 | 2015-09-23 | 携程计算机技术(上海)有限公司 | 网页爬虫系统及网页爬取方法 |
Non-Patent Citations (2)
Title |
---|
UPGUNDECHA: "Using Tesseract with Selenium WebDriver for checking text on images using OCR", 《HTTPS://UNMESH.ME/2015/06/30/USING-TESSERACT-WITH-SELENIUM-WEBDRIVER-FOR-CHECKING-TEXT-ON-IMAGES-USING-OCR/ 》 * |
鲲鹏WEB数据抓取: "百度指数2014年9月份最新采集方案(快速、准确)", 《HTTP://WWW.SITE-DIGGER.COM/HTML/ARTICLES/20141001/82.HTML》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107909068A (zh) * | 2017-11-24 | 2018-04-13 | 苏州灯蓝软件科技有限公司 | 一种大数据图像曲线反向解析方法及系统 |
CN107871128A (zh) * | 2017-12-11 | 2018-04-03 | 广州市标准化研究院(广州市组织机构代码管理中心) | 一种基于svg动态图表的高鲁棒性图像识别方法 |
CN107871128B (zh) * | 2017-12-11 | 2023-06-06 | 广州市标准化研究院(广州市组织机构代码管理中心) | 一种基于svg动态图表的高鲁棒性图像识别方法 |
CN109614532A (zh) * | 2018-11-26 | 2019-04-12 | 上海阿米特数据系统有限公司 | 一种零售网站数据自动获取系统 |
CN109685053A (zh) * | 2018-12-18 | 2019-04-26 | 北京天融信网络安全技术有限公司 | 训练文字识别系统的方法、装置、存储介质及电子设备 |
CN109543454A (zh) * | 2019-01-25 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 一种反爬虫方法及相关设备 |
CN109543454B (zh) * | 2019-01-25 | 2022-07-12 | 腾讯科技(深圳)有限公司 | 一种反爬虫方法及相关设备 |
CN111753494A (zh) * | 2020-07-06 | 2020-10-09 | 浪潮卓数大数据产业发展有限公司 | 基于selenium的woff字体解密方法及系统 |
CN112257100A (zh) * | 2020-07-30 | 2021-01-22 | 北京沃东天骏信息技术有限公司 | 敏感数据保护效果的检测方法、装置及存储介质 |
CN112100547A (zh) * | 2020-11-10 | 2020-12-18 | 北京数智新天信息技术咨询有限公司 | 一种页面数据采集的方法、装置及电子设备 |
CN113449169A (zh) * | 2021-09-01 | 2021-09-28 | 广州越创智数信息科技有限公司 | 一种基于rpa的舆情数据获取方法及系统 |
CN115292647A (zh) * | 2022-10-08 | 2022-11-04 | 北京易特思维信息技术有限公司 | 一种非侵入式政务数据的获取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106095918B (zh) | 2020-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106095918A (zh) | 一种基于ocr技术的网络受保护指数数据的获取方法 | |
CN102054015B (zh) | 使用有机物件数据模型来组织社群智能信息的系统及方法 | |
CN102779140B (zh) | 一种关键词获取方法及装置 | |
US10482174B1 (en) | Systems and methods for identifying form fields | |
CN108737423B (zh) | 基于网页关键内容相似性分析的钓鱼网站发现方法及系统 | |
US10810378B2 (en) | Method and system for decoding user intent from natural language queries | |
US20240012846A1 (en) | Systems and methods for parsing log files using classification and a plurality of neural networks | |
CN104504150A (zh) | 新闻舆情监测系统 | |
CN101114294A (zh) | 自助式智能垂直搜索方法 | |
CN102158365A (zh) | 一种网络日志挖掘中的用户聚类方法及系统 | |
CN110188291B (zh) | 基于代理日志的文档处理 | |
US20120166428A1 (en) | Method and system for improving quality of web content | |
JP2018128942A (ja) | 解析装置、解析方法、およびプログラム | |
US20230132720A1 (en) | Multiple input machine learning framework for anomaly detection | |
US20240296691A1 (en) | Image reading systems, methods and storage medium for performing geometric extraction | |
US10885140B2 (en) | Intelligent search engine | |
WO2022231943A1 (en) | Intelligent data extraction | |
CN113688346A (zh) | 一种违法网站识别方法、装置、设备及存储介质 | |
CN106097403A (zh) | 一种基于图像曲线推算的网络受保护指数数据的获取方法 | |
CN111859074B (zh) | 基于深度学习的网络舆情信息源影响力评估方法及系统 | |
Gong | An automated snowball census of the political web | |
CN108897739B (zh) | 一种智能化的应用流量识别特征自动挖掘方法与系统 | |
KR20240013640A (ko) | 유해 url 탐지 방법 | |
CN114239689A (zh) | 一种基于多模态的网站类型判断方法及装置 | |
Jia | [Retracted] Exploratory Research on the Practice of College English Classroom Teaching Based on Internet and Artificial Intelligence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |