分类标签数据获取方法以及装置与流程

文档序号:12786558阅读:390来源:国知局
分类标签数据获取方法以及装置与流程

本发明涉及移动互联网领域,具体而言,涉及一种分类标签数据获取方法以及装置。



背景技术:

随着科技的发展,互联网与人们的生活也越来越息息相关,繁多的互联网数据中包含了大量具有价值的数据,因此,web端信息采集技术被广泛运用,俗称爬虫。爬虫技术主要针对http等请求进行开发,高频的爬虫会对网站服务器造成一定压力,因此很多公司都采用了一定的反爬虫技术来防止爬虫的高频侵袭。针对不同的反爬虫技术,我们需要花费很长时间来破解一个反爬虫方案,而且可能无法破解。这种见招拆招式爬虫攻略效率极低。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种分类标签数据获取方法以及装置,用以对网页界面中的文字进行分类,避免了运用传统爬虫程序进行分类标签数据获取时,需要花费很长时间来破解一个反爬虫方案,而且可能无法破解的问题。

第一方面,本发明实施例提供了一种分类标签数据获取方法,所述方法包括:电子设备在基于网络返回的页面数据渲染得到的界面中执行预设的操作步骤,将执行所述预设的操作步骤后在所述界面中显示的数据以图片进行保存;识别所述图片,得到所述图片中的文本信息;基于获取的关键词信息,得到所述文本信息中与所述关键词信息相关的抽取信息;接收用户输入的纠错信息,基于所述纠错信息对所述抽取信息进行纠错,得到纠错后的抽取信息作为目标文档;基于预先建立的主题分类模型,计算得到所述目标文档的分类标签。

第二方面,本发明实施例提供了一种分类标签数据获取装置,所述装置包括:保存模块,用于基于网络返回的页面数据渲染得到的界面中执行预设的操作步骤,将执行所述预设的操作步骤后在所述界面中显示的数据以图片进行保存;识别模块,用于识别所述图片,得到所述图片中的文本信息;抽取模块,用于基于获取的关键词信息,得到所述文本信息中与所述关键词信息相关的抽取信息;纠错模块,用于接收用户输入的纠错信息,基于所述纠错信息对所述抽取信息进行纠错,得到纠错后的抽取信息作为目标文档;计算模块,用于基于预先建立的主题分类模型,计算得到所述目标文档的分类标签。

与现有技术相比,本发明各实施例提出的分类标签数据获取方法以及装置的有益效果是:该方法通过对网络返回的页面数据渲染得到的界面以图片方式进行保存后,再对图片进行识别,得到图片中的文本信息,将文本信息进行抽取、纠错后再运用主题分类模型计算得到目标文档的分类标签。由于整个过程都是针对图片进行处理,避免了网络通信带来的不稳定因素,也避免了传统爬虫需要处理大量的脚本(如html、javascript、css等)和需要花费很长时间考虑web或者软件开发者的框架设计,以应对不同的反爬虫程序,本发明所提出的方案适用面更为广泛。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的电子设备的结构框图;

图2为本发明第一实施例提供的分类标签数据获取方法的流程图;

图3为本发明第二实施例提供的分类标签数据获取方法的流程图;

图4为本发明第三实施例提供的分类标签数据获取装置的结构框图;

图5为本发明第四实施例提供的分类标签数据获取装置的结构框图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

如图1所示,是所述电子设备100的方框示意图。所述电子设备100可以是个人电脑、平板电脑等。所述电子设备100包括:分类标签数据获取装置、存储器110、存储控制器120、处理器130、外设接口140、输入输出单元150、音频单元160、显示单元170。

所述存储器110、存储控制器120、处理器130、外设接口140、输入输出单元150、音频单元160以及显示单元170各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述分类标签数据获取装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中或固化在所述客户端设备的操作系统(operating system,OS)中的软件功能模块。所述处理器130用于执行存储器110中存储的可执行模块,例如所述分类标签数据获取装置400包括的软件功能模块或计算机程序。

其中,存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器110用于存储程序,所述处理器130在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的过程定义的电子设备100所执行的方法可以应用于处理器130中,或者由处理器130实现。

处理器130可能是一种集成电路芯片,具有信号的处理能力。上述的处理器130可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述外设接口140将各种输入/输入装置耦合至处理器130以及存储器110。在一些实施例中,外设接口140,处理器130以及存储控制器120可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

输入输出单元150用于提供给用户输入数据实现用户与电子设备100的交互。所述输入输出单元150可以是,但不限于,鼠标和键盘等。

音频单元160向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。

显示单元170在电子设备100与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元170可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器130进行计算和处理。

第一实施例

请参照图2,图2是本发明第一实施例提供的一种分类标签数据获取方法的流程图,所述方法应用于电子设备。下面将对图2所示的流程进行详细阐述,所述方法包括:

步骤S110:电子设备在基于网络返回的页面数据渲染得到的界面中执行预设的操作步骤,将执行所述预设的操作步骤后在所述界面中显示的数据以图片进行保存。

所述预设的操作步骤可以是保存在电子设备存储器中的一段模拟用户对鼠标的点击行为或者滚动滚轮的行为的程序。以模拟用户对鼠标的点击行为的程序为例,该程序可以模拟用户的点击行为,使得界面中的内容随着点击的位置不同而显示出不同的内容。电子设备将界面中的内容截屏成图片进行保存。

由于是将网页中的内容进行截屏保存成图片,实现了“所见即所得”的效果。针对图片进行处理,也避免了网络通信带来的不稳定因素。

骤S120:识别所述图片,得到所述图片中的文本信息。

作为一种实施方式,可以通过OCR(Optical Character Recognition,光学字符识别)技术识别图片中所包含的文字信息。

步骤S130:基于获取的关键词信息,得到所述文本信息中与所述关键词信息相关的抽取信息。

其中,所述关键词信息由用户输入,基于用户输入的关键词信息和预先保存的基础字符串算法,可以得到与所述关键词信息相关的文字的范围。其中,所述预先保存的基础字符串算法可以是搜索算法或者是正则表达式等衍生算法。当得到与所述关键词信息相关的文字的范围后得到目标范围,并将目标范围抽取出来,得到与所述关键词信息相关的抽取信息。

步骤S140:接收用户输入的纠错信息,基于所述纠错信息对所述抽取信息进行纠错,得到纠错后的抽取信息作为目标文档。

由于OCR识别技术可能会识别出一些错误的符号或者汉字,因此,电子设备可以接收用户根据业务经验输入的纠错信息对抽取信息进行纠错。例如,关键词信息是地址信息,得到的抽取信息是“北京市韦台区木樨园”,用户可以根据行政区划分经验得知,正确的信息应该是“北京市丰台区木樨园”,电子设备接收用户输入的纠错信息,即将“韦台”修改为“丰台”,得到纠错后的抽取信息。

当然,用户输入的纠错信息除了包括修改字符外,还可以包括增加字符,删除字符等。

步骤S150:基于预先建立的主题分类模型,计算得到所述目标文档的分类标签。

基于主题分类模型,将所述目标文档进行分类,得到与所述目标文档相关的唯一分类标签。

本发明实施例提出的分类标签数据获取方法,通过对网络返回的页面数据渲染得到的界面以图片方式进行保存后,再对图片进行识别,得到图片中的文本信息,将文本信息进行抽取、纠错后再运用主题分类模型计算得到目标文档的分类标签。由于整个过程都是针对图片进行处理,避免了网络通信带来的不稳定因素,也避免了传统爬虫需要处理大量的脚本(如html、javascript、css等)和需要花费很长时间考虑web或者软件开发者的框架设计,以应对不同的反爬虫程序,本发明所提出的方案适用面更为广泛。

第二实施例

请参照图3,图3是本发明第二实施例提供的一种分类标签数据获取方法的流程图,所述方法应用于电子设备。下面将对图3所示的流程进行详细阐述,所述方法包括:

步骤S210:电子设备在基于网络返回的页面数据渲染得到的界面中执行预设的操作步骤,将执行所述预设的操作步骤后在所述界面中显示的数据以图片进行保存。

步骤S220:识别所述图片,得到所述图片中的文本信息。

步骤S230:基于获取的关键词信息,得到所述文本信息中与所述关键词信息相关的抽取信息。

步骤S240:接收用户输入的纠错信息,基于所述纠错信息对所述抽取信息进行纠错,得到纠错后的抽取信息作为目标文档。

步骤S210-步骤S240请参看第一实施例,本实施例主要对步骤S251-步骤S257做详细介绍。

步骤S251:根据预设规则将所述目标文档划分为多个子文档。

其中,所述预设规则可以是将从同一张图片中所得到的纠错后的抽取信息作为一个子文档,也可以是将从每隔相同数量张数图片中所得到的纠错后的抽取信息作为一个子文档。一个目标文档可以被划分为多个子文档。

步骤S252:基于分词算法将每个所述子文档进行分词处理,得到多个分词。

电子设备可以调用第三方分词算法分别对每个子文档进行分词处理,将每个子文档拆分成多个分词。

步骤S253:计算每个所述分词的权值,删除所述分词中,所述权值小于预设阈值的分词,得到剩下的N个分词,用数字0到N-1对所述N个分词进行一一标注。

具体地,可以基于TF-IDF技术分别将每个子文档所包括的每个分词进行加权处理,得到属于每个分词的权值。将每个所述分词的权值与预设阈值进行比对,删除权值小于所述预设阈值的分词,得到剩下的N个分词,并分别对每个分词进行标注,使得N个分词分别对应0-N-1中的一个数字。

步骤S254:获取预设主题标注的数量M,基于无监督学习算法,获取每个所述子文档的主题标注,其中,每个所述子文档的主题标注的数量的范围为0到M-1个;

步骤S255:分别在每个所述子文档所包括的主题标注下遍历该子文档所包括的每个所述分词,获取该分词在该主题标注下出现的次数,将次数最大的主题标注作为该分词的分词标签。

即遍历0-N-1个数字,计算每个分词在不同主题标注下出现的次数,选择次数最大的主题标注作为该分词的分词标签,使得每个分词都对应一个分词标签。

步骤S256:遍历每个所述子文档,根据所述分词标签,将在该子文档中,出现次数最多的分词标签作为该子文档的文档标签。

步骤S257:基于每个所述子文档的文档标签,得到所述目标文档的分类标签。

可以获取预设的最大迭代次数、重复初始化次数以及平均相似度阈值,分别计算在每个主题标注下,所述目标文档包括的全部分词中,每两个所述分词之间的平均相似度。

具体地,可以将每个主题标注作为目标文档的预设分类标签,分别在每个所述主题标注下,遍历所有分词,获取每个所述分词出现的频率(没有出现则为0),得到关于每个所述子文档的文档标签的N维向量,其中,每一维表征一个所述分词的频率;基于夹角余弦值计算每两个所述分词之间的距离,将所有两两所述分词之间的距离的平均值作为所述平均相似度,用于衡量主题标注之间的差异程度,默认平均相似度越大差异越高。

若所述平均相似度不小于所述平均相似度阈值或者迭代次数不小于所述最大迭代次数,判断初始化次数是否不小于所述重复初始化次数;

若所述初始化次数不小于所述重复初始化次数,将每次初始化后得到的所述平均相似度进行比较,选择最大的所述平均相似度所对应的所述主题标注作为所述目标文档的分类标签。

当然,作为另一种实施方式,若所述初始化次数小于所述重复初始化次数,所述方法还可以包括:

当所述子文档的数量为N个时,随机获取1/2N个所述子文档,将所述预设主题标注的数量M自加后对P取余,得到的值作为更新后的预设主题标注的数量M1,其中,P为大于M的最小素数。

M自加即:M+=M,最后得到2M,表征的是翻倍。选取素数,是由于只有素数的剩余类在加法下构成的群才会仅存在两个平凡子群,这样任何一个非零元素通过自加P-1次都能遍历0~P-1中的元素,保证假设空间能在理论上被遍历。

更新预设主题标注时采用更新1/2N个所述子文档的原因为在N个元素中选择M个元素的组合数最大在M=N/2时产生,这样在更新时能产生更多的备选初始点以更多地覆盖假设空间。

重新遍历1/2N个所述子文档,根据1/2N个所述子文档中每个所述分词标签,将在每个所述子文档中,出现次数最多的所述分词标签作为该子文档的文档标签;基于1/2N个所述子文档中,每个所述子文档的文档标签,得到所述目标文档的分类标签。

本发明实施例提出的分类标签数据获取方法,通过对网络返回的页面数据渲染得到的界面以图片方式进行保存后,再对图片进行识别,得到图片中的文本信息,将文本信息进行抽取、纠错后再运用主题分类模型计算得到目标文档的分类标签。由于整个过程都是针对图片进行处理,避免了运用传统爬虫程序进行分类标签数据获取时,需要花费很长时间来破解一个反爬虫方案,而且可能无法破解的问题,同时,采用主题分类模型计算得到目标文档的分类标签过程中,设置了最大迭代次数和重复初始化次数,避免了迭代次数过多给电子设备造成的负荷。

第三实施例

请参照图4,图4是本发明第三实施例提供的一种分类标签数据获取装置400的结构框图。下面将对图4所示的结构框图进行阐述,所示装置400包括:

保存模块410,用于基于网络返回的页面数据渲染得到的界面中执行预设的操作步骤,将执行所述预设的操作步骤后在所述界面中显示的数据以图片进行保存;

识别模块420,用于识别所述图片,得到所述图片中的文本信息;

抽取模块430,用于基于获取的关键词信息,得到所述文本信息中与所述关键词信息相关的抽取信息;

纠错模块440,用于接收用户输入的纠错信息,基于所述纠错信息对所述抽取信息进行纠错,得到纠错后的抽取信息作为目标文档;

计算模块450,用于基于预先建立的主题分类模型,计算得到所述目标文档的分类标签。

本实施例对分类标签数据获取的装置400的各功能模块实现各自功能的过程,请参见上述图1至图3所示实施例中描述的内容,此处不再赘述。

第四实施例

请参照图5,图5是本发明第四实施例提供的一种分类标签数据获取装置500的结构框图。下面将对图5所示的结构框图进行阐述,所示装置500包括:

保存模块510,用于基于网络返回的页面数据渲染得到的界面中执行预设的操作步骤,将执行所述预设的操作步骤后在所述界面中显示的数据以图片进行保存;

识别模块520,用于识别所述图片,得到所述图片中的文本信息;

抽取模块530,用于基于获取的关键词信息,得到所述文本信息中与所述关键词信息相关的抽取信息;

纠错模块540,用于接收用户输入的纠错信息,基于所述纠错信息对所述抽取信息进行纠错,得到纠错后的抽取信息作为目标文档;

计算模块550,用于基于预先建立的主题分类模型,计算得到所述目标文档的分类标签。

其中,计算模块550还包括:

划分子模块551,用于根据预设规则将所述目标文档划分为多个子文档;

分词子模块552,用于基于分词算法将每个所述子文档进行分词处理,得到多个分词;

删除子模块553,用于计算每个所述分词的权值,删除所述分词中,所述权值小于预设阈值的分词,得到剩下的N个分词,用数字0到N-1对所述N个分词进行一一标注;

获取子模块554,用于获取大于预设主题标注数量M,基于无监督学习算法,获取每个所述子文档的主题标注,其中,每个所述子文档的主题标注的数量的范围为0到P-1个;

遍历子模块555,用于分别在每个所述子文档所包括的主题标注下遍历该子文档所包括的每个所述分词,获取该分词在该主题标注下出现的次数,将次数最大的主题标注作为该分词的分词标签;

所述遍历子模块555,还用于遍历每个所述子文档,根据所述分词标签,将在该子文档中,出现次数最多的分词标签作为该子文档的文档标签;

所述获取子模块554,还用于基于每个所述子文档的文档标签,得到所述目标文档的分类标签。

此外,所述获取子模块554可以包括:初始化子模块,用于获取最大迭代次数、重复初始化次数以及平均相似度阈值;计算子模块,用于分别计算在每个所述主题标注下,所述目标文档包括的全部分词中,每两个所述分词之间的平均相似度;判断子模块,用于若所述平均相似度不小于所述平均相似度阈值或者迭代次数不小于所述最大迭代次数,判断初始化次数是否不小于所述重复初始化次数;选择子模块,用于若所述初始化次数不小于所述重复初始化次数,将每次初始化后得到的所述平均相似度进行比较,选择最大的所述平均相似度所对应的所述主题标注作为所述目标文档的分类标签。

综上所述,本发明实施例提出的分类标签数据获取方法以及装置,通过对网络返回的页面数据渲染得到的界面以图片方式进行保存后,再对图片进行识别,得到图片中的文本信息,将文本信息进行抽取、纠错后再运用主题分类模型计算得到目标文档的分类标签。由于整个过程都是针对图片进行处理,避免了网络通信带来的不稳定因素,也避免了传统爬虫需要处理大量的脚本(如html、javascript、css等)和需要花费很长时间考虑web或者软件开发者的框架设计,以应对不同的反爬虫程序,本发明所提出的方案适用面更为广泛。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1