视频网站的信息抓取方法

文档序号:6332215阅读:152来源:国知局
专利名称:视频网站的信息抓取方法
技术领域
本发明涉及网络搜索技术领域,更具体地说,涉及一种用于获得视频网站中视频 的详细信息的信息抓取方法。
背景技术
1994年基于TOB的搜索引擎出现以来,搜索引擎便得到了极大的发展。搜索引擎 解决了海量互联网资源的快速定位和检索,在人们日常生活和工作中发挥了越来越大的作 用。作为搜索引擎的重要一部分,网页信息抓取技术,即抓取技术的发展也是越来越成熟。 在计算机领域,越来越多的网络抓取技术都以开源的方式提供给开发人员和企业应用,下 面简要介绍几种目前比较流行的开源网络抓取技术。Larbin =Larbin是一个开源的网络抓取技术,由法国人独立开发,目的是跟踪页 面的URL进行扩展抓取,最后为搜索引擎提供数据来源。Larbin只抓取网页,不处理搜索引 擎的其他解析、索引、检索工作。Larbin非常高效,一个简单的Larbin抓取每天可以获取 500万网页。Heritrix =Heritrix是SourceForge上的开源产品。Heritrix的特点是具有很好 的扩展性,开发者可以根据自己的需要,扩展下载逻辑。抓取工具根据给定URL地址想网站 提交HTTP请求,抓取网络资源,获取完整、及时的网站内容。通过分析已下载网页内的有效 链接URL地址,进一步获取更多网络资源。Heritrix可以通过TOB用户界面方便地启动和 管理下载过程,控制策略灵活。Heritrix也可以获取图像以及其他非文本内容。Nutch =Nutch是一个完整的Java应用系统,以Lucene为基础实现了搜索引擎应 用。Nutch提供了网页抓取和下载功能,并且把下载结果通过Lucene接口存储到数据库,并 建立索引。随着视频网站在国内的普及和蓬勃发展,人们的互联网生活几乎与视频网站已经 密不可分。不仅人们十分喜欢视频这种直观的信息获取方式,爱浏览视频,而且很多人都亲 自参与视频的拍摄和制作,并发布视频于视频站点与网友们共享和交流。视频网站信息抓 取的运行任务就是抓取各个视频网站的视频的详细信息,包括视频发布人、视频名称、上传 时间、标签、简介、图片、浏览次数、评论次数等。做到针对视频网站视频信息发布的整体监 控。目前基本所有的开源网络抓取技术的总体设计原理相同。即抓取过程从一个或若 干初始网页开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前网页上抽取新 的URL放入队列直到满足系统停止条件。由于需要对视频节目多维度的信息采集,抓取程 序需要能够定位出网页中存在的多个属性(如点击数、回复数、所属类别、节目上传人)对 应的具体信息。所以对于视频网站的节目抓取而言,普通的页面下载和URL抽取方式并不 能满足视频搜索这种特殊搜索目标的信息采集。并且由于视频网站节目信息的特殊性,普 通模式的网页抓取无法或者没有获取一些特殊信息,如节目对应图片、节目所在搜索层数 等。此外,为了获取丰富的数据,针对视频网站的特点,抓取工具还需要做其他特殊操作。

发明内容
本发明要解决的技术问题在于,针对现有的视频网站的信息抓取技术不能完整的 获取视频网站节目的所有信息的缺陷,提供一种完整、方便的抓取视频网站中的全部视频 信息的信息抓取方法。本发明解决其技术问题所采用的技术方案是构造一种视频网站的信息抓取方 法,其中包括步骤S1、抓取视频网站的网页的源文件;S2、针对不同格式的网页,指定不同 的正则表达式集合对所述网页的源文件中视频节目的属性信息进行定位,产生定位结果; S3、根据所述定位结果,将所述网页的源文件与所述正则表达式集合中的正则表达式进行 匹配,产生匹配结果;S4、根据所述匹配结果,将所述网页的源文件中视频节目的属性信息 存入相应的属性库中。在本发明所述的视频网站的信息抓取方法中,步骤S3包括步骤S31、根据所述定 位结果,对所述网页的源文件与本地标签库进行对比,产生对比结果;S32、根据所述对比结 果,过滤所述网页的源文件;S33、将过滤后的网页的源文件与所述正则表达式集合中的正 则表达式进行匹配,产生匹配结果。在本发明所述的视频网站的信息抓取方法中,步骤Sl之前包括步骤S01、解析所 述网页的当层链接,得到下一层链接;S02、重复步骤SOl直到最大抓取时间;S03、根据所述 网页链接的解析结果得到待抓取的网页。在本发明所述的视频网站的信息抓取方法中,所述步骤S03包括S031、确定待抓 取的域名范围和所述网页链接的过滤正则;S032、根据所述域名范围和过滤正则对所述网 页进行过滤;S033、根据所过滤后的网页链接的解析结果得到待抓取的网页。在本发明所述的视频网站的信息抓取方法中,步骤SOl包括S011、建立存放域名 以及对应的字符集的域名字符集集合;S012、提取待解析链接中的子域名;S013、如果所述 域名字符集集合中存在所述子域名,则直接提取相应的域名字符集进行解析,如果所述域 名字符集集合中不存在所述子域名,则对所述子域名进行解析并将所述子域名以及对应的 域名字符集存入所述域名字符集集合中。在本发明所述的视频网站的信息抓取方法中,如待抓取的网页为跳转网页,则步 骤Sl之前包括步骤S81、编写对应的所述跳转网页的URL规则以及所述跳转网页中的节目 下载链接的URL规则的跳转正则;S82、根据所述跳转正则提取所述跳转网页;S83、解析所 述跳转网页的链接;S84、根据所述跳转网页的链接的解析结果得到待抓取的网页。在本发明所述的视频网站的信息抓取方法中,如待抓取的网页为包含异步信息的 网页,则步骤Sl之前包括步骤S91、编写所述包含异步信息的网页中的节目id值以及异步 请求URL规则的异步正则;S92、根据所述异步正则提取所述包含异步信息的网页的异步信 息;并通过所述异步信息得到异步请求链接。S93、解析所述异步请求链接;S94、根据所述 异步请求链接的解析结果得到待抓取的网页。在本发明所述的视频网站的信息抓取方法中,如待抓取的网页需要使用代理访 问,则步骤Sl之前包括步骤设置代理服务器的IP、代理端口以及代理用户名密码。在本发明所述的视频网站的信息抓取方法中,如具有多个抓取出口 IP,指定出口 IP对所述网页的源文件进行抓取。
实施本发明的视频网站的信息抓取方法,具有以下有益效果完整、方便的抓取视 频网站中的全部视频信息,避免了现有的视频网站的信息抓取技术不能完整的获取视频网 站节目的所有信息的缺陷。通过本地标签库对下载的网页源文件进行过滤,很好的避免错误的视频信息。优 化网页抓取方式,更加有效的解析链接、抓取页面。进行域名范围和网页链接的过滤,避免 重复链接和超出域名范围。域名字符集集合的设置加快了信息抓取速度。跳转页面解析功 能获取跳转页面中的下载路径。对异步请求进行拼接提取,并解析异步请求返回的数据信 息,很好地解决了异步数据的抓取问题。代理的设置可以抓取需要代理访问的网页。根据 用户需要指定出口 IP进行网页的抓取。


下面将结合附图及实施例对本发明作进一步说明,附图中图1为本发明的视频网站的信息抓取方法的第一优选实施例的流程图;图2为本发明的视频网站的信息抓取方法的第二优选实施例的流程图;图3为本发明的视频网站的信息抓取方法的第三优选实施例的流程图;图4为本发明的视频网站的信息抓取方法的优选实施例的步骤S03的流程图;图5为本发明的视频网站的信息抓取方法的优选实施例的步骤SOl的流程图;图6为本发明的视频网站的信息抓取方法的待抓取的网页为跳转网页的优选实 施例的部分流程图;图7为本发明的视频网站的信息抓取方法的待抓取的网页为包含异步信息的网 页的优选实施例的部分流程图;图8为本发明的视频网站的信息抓取方法的具体实施例的网页提取流程图;图9为本发明的视频网站的信息抓取方法的具体实施例的节目层数设定流程图;图10为本发明的视频网站的信息抓取方法的具体实施例的步骤S03的链接过滤 以及节目生成流程图;图11为本发明的视频网站的信息抓取方法的待抓取的网页为跳转网页的具体实 施例的流程图;图12为本发明的视频网站的信息抓取方法的待抓取的网页为包含异步信息的网 页的具体实施例的流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。如图1所示,在本发明的视频网站的信息抓取方法的第一优选实施例的流程图 中,所述视频网站的信息抓取方法开始于步骤100 ;步骤100之后进行到步骤101,抓取视频 网站的网页的源文件;随后,到下一步骤102,针对不同格式的网页,指定不同的正则表达 式集合对所述网页的源文件中视频节目的属性信息进行定位,产生定位结果;随后,到下一 步骤103,根据所述定位结果,将所述网页的源文件与所述正则表达式集合中的正则表达式进行匹配,产生匹配结果;随后,到下一步骤104,根据所述匹配结果,将所述网页的源文件 中视频节目的属性信息存入相应的属性库中;最后该方法结束于步骤105。本视频网站的 信息抓取方法提取网页中的多处关键信息,提供用户多种查找维度和数据参考点。针对指 定视频网站特定格式的网页,指定不同的正则表达式集合。不同的正则表达式对应页面中 的各个不同属性相关的信息,如“节目名称”、“上传时间”等。同样的正则表达式所在的集合 不同则其在抓取页面内容时所起的作用也不同。以正则编号区分和定位该正则表达式属于 哪一类集合,动态的运用该正则表达式匹配页面元素或内容,使正则表达式可以动态复用, 减少维护和部署难度。将网页的源文件与各集合中的正则表达式进行匹配,将匹配出来的 信息按照集合类型即正则表达式的正则编号存入相应的页面节目对象与之相对应的属性 域中进行入库。采用本发明的视频网站的信息抓取方法可完整、方便的抓取视频网站中的 全部视频信息,避免了现有的视频网站的信息抓取技术不能完整的获取视频网站节目的所 有信息的缺陷。在网页解析方面进行了很多处理,比如通过正则针对视频节目的各个属性 进行信息提取,增强用户节目数据参考点。如图2所示,在本发明的视频网站的信息抓取方法的第二优选实施例的流程图 中,所述视频网站的信息抓取方法开始于步骤200 ;步骤200之后进行到步骤201,抓取视 频网站的网页的源文件;随后,到下一步骤202,针对不同格式的网页,指定不同的正则表 达式集合对所述网页的源文件中视频节目的属性信息进行定位,产生定位结果;随后,到下 一步骤203,根据所述定位结果,对所述网页的源文件与本地标签库进行对比,产生对比结 果;随后,到下一步骤204,根据所述对比结果,过滤所述网页的源文件;随后,到下一步骤 205,将过滤后的网页的源文件与所述正则表达式集合中的正则表达式进行匹配,产生匹配 结果;随后,到下一步骤206,根据所述匹配结果,将所述网页的源文件中视频节目的属性 信息存入相应的属性库中;最后该方法结束于步骤207。针对符合页面解析格式的网页,进 行网页源文件下载。将网页的源文件与本地标签库进行对比,过滤掉如广告、弹窗等无用的 垃圾标签和内容,提取页面中有价值的标签信息,并将这部分信息的网页标签过滤掉,提取 其中的属性信息的文本信息,再将保留的去标签处理后的文本信息加入内存用于下一步骤 网页的源文件与正则表达式的匹配。通过本地标签库对下载的网页源文件进行过滤,很好 的避免错误的视频信息。通过进行网页标签过滤的方式,大大减小正则的编写难度和正则 维护量。如图3所示,在本发明的视频网站的信息抓取方法的第三优选实施例的流程图 中,所述视频网站的信息抓取方法开始于步骤300 ;步骤300之后进行到步骤301,解析所 述网页的当层链接,得到下一层链接;随后,到下一步骤302,重复步骤301直到最大抓取时 间;随后,到下一步骤303,根据所述网页链接的解析结果得到待抓取的网页;随后,到下一 步骤304,抓取视频网站的网页的源文件;随后,到下一步骤305,针对不同格式的网页,指 定不同的正则表达式集合对所述网页的源文件中视频节目的属性信息进行定位,产生定位 结果;随后,到下一步骤306,根据所述定位结果,将所述网页的源文件与所述正则表达式 集合中的正则表达式进行匹配,产生匹配结果;随后,到下一步骤307,根据所述匹配结果, 将所述网页的源文件中视频节目的属性信息存入相应的属性库中;最后该方法结束于步骤 308。本发明采用广度优先搜索策略进行网页源文件的抓取,提供视频节目相对入口所在搜 索层数,给热点节目的分析予参考依据1、抓取采用广度优先搜索策略,从抓取入口开始产生新的链接并解析,此为相对入口的第一层链接;2、解析第一层的所有链接,在解析第一层 链接的过程中不断产生新的链接,此为第二层连接,在解析完第一层链接前不会解析第一 层链接的子链接(即第二层链接);3、循环步骤2,解析当前层链接,并产生下一层链接。循 环过程中,记录链接所在层数,直到最大的抓取时间,最大的抓取时间可以在配置文件中进 行配置;4、程序按照解析、提取、过滤三个步骤进行循环运作。首先解析页面,再提取相关有 价值的内容,最后通过正则表达式过滤出节目所需要的属性信息。优化网页抓取方式,更加 有效的解析链接、抓取页面;并且节目和链接所在层数的标识丰富了节目信息,为热点节目 的判断提供了依据。如图4所示,在本发明的视频网站的信息抓取方法的优选实施例的步骤S03的流 程图中,所述视频网站的信息抓取方法的步骤S03开始于步骤400 ;步骤400之后进行到步 骤401,确定待抓取的域名范围和所述网页链接的过滤正则;到下一步骤402,根据所述域 名范围和过滤正则对所述网页进行过滤;随后,到下一步骤403,根据所过滤后的网页链接 的解析结果得到待抓取的网页;最后该方法结束于步骤404。对待解析链接进行过滤,过滤 不仅仅进行域名控制,还要防止大量不同URL访问相同页面等问题1、由于业务需求,待抓 取的信息抓取范围应该处于特定的域名范围内,因此要在抓取信息前配置抓取域名搜索范 围;2、由于个别网站的URL有垃圾参数,导致个别网站相同URL中的相同属性不同参数值的 链接对应的页面相同,所以在入口对应信息中需要添加过滤正则;3、抓取程序运行产生新 的链接;4、通过第二步的过滤正则,去掉链接中的无用属性信息;5、判断该新链接有效性, 如协议名是否正确,是否符合URL格式;6、通过后缀名匹配、URL正则匹配和节目协议匹配 的方式判断该URL是属于节目范围。如果是节目范围则进行排重和进行进一步节目分析; 7、进行域名范围控制,判定该链接是否属于特定的域名范围;8、如果链接不属于域名控制 范围,则该链接废除,如果属于域名控制范围,则进行待解析链接排重,如果链接不存在则 添加到待解析链接库中。链接过滤策略的使用限定了网页搜索的范围,过滤了很多访问相 同页面的不同URL链接和很多格式错误链接,避免网络和内存资源浪费,提高了抓取程序 运行效率。如图5所示,在本发明的视频网站的信息抓取方法的优选实施例的步骤SOl的流 程图中,所述视频网站的信息抓取方法的步骤SOl开始于步骤500 ;步骤500之后进行到步 骤501,建立存放域名以及对应的字符集的域名字符集集合;到下一步骤502,提取待解析 链接中的子域名;随后,到下一步骤503,如果所述域名字符集集合中存在所述子域名,则 直接提取相应的域名字符集进行解析,如果所述域名字符集集合中不存在所述子域名,则 对所述子域名进行解析并将所述子域名以及对应的域名字符集存入所述域名字符集集合 中;最后该方法结束于步骤504。域名字符集集合的添加减少了程序向网页服务器发送请 求的次数,提高网页抓取和解析速度。如图6所示,在本发明的视频网站的信息抓取方法的待抓取的网页为跳转网页的 优选实施例的部分流程图中,所述视频网站的待抓取的网页为跳转网页的信息抓取方法开 始于步骤600 ;步骤600之后进行到步骤601,编写对应的所述跳转网页的URL规则以及 所述跳转网页中的节目下载链接的URL规则的跳转正则;到下一步骤602,根据所述跳转 正则提取所述跳转网页;随后,到下一步骤603,解析所述跳转网页的链接;随后,到下一步 骤604,根据所述跳转网页的链接的解析结果得到待抓取的网页;最后该方法结束于步骤
8605。后面的步骤与第一个优选实施例的步骤相同,具体参见上述优选实施例所述的步骤。 如节目下载路径不在当前解析页面,而在弹出的跳转页面中1、编写站点对应的跳转正则, 跳转正则描述节目页面中跳转页面的URL规则以及跳转页面中的节目下载链接的URL规 则;2、解析节目链接,产生该页面的链接集合;3、对节目链接集合进行正则匹配,提取出跳 转页面链接;4、对跳转页面进行解析,产生该页面的链接集合;5、对跳转页面产生的链接 集合通过正则进行链接过滤,提取出真正的节目网页。针对下载链接处于跳转页面的问题 进行了处理,增强了节目下载路径的抓取功能,跳转页面解析能够方便的获取跳转页面中 的下载路径。如图7所示,在本发明的视频网站的信息抓取方法的待抓取的网页为包含异步信 息的网页的优选实施例的部分流程图中,所述视频网站的待抓取的网页为包含异步信息的 网页的信息抓取方法开始于步骤700 ;步骤700之后进行到步骤701编写所述包含异步信 息的网页中的节目id值以及异步请求URL规则的异步正则;到下一步骤702,根据所述异 步正则提取所述包含异步信息的网页的异步信息;并通过所述异步信息得到异步请求链 接;随后,到下一步骤703,解析所述跳转网页的链接;随后,到下一步骤704,根据所述跳转 网页的链接的解析结果得到待抓取的网页;最后该方法结束于步骤705。后面的步骤与第 一个优选实施例的步骤相同,具体参见上述优选实施例所述的步骤。如要提取的节目的属 性信息为异步信息1、编写站点对应的正则,正则描述节目页面中位于JavaScript中的节 目id值以及异步请求URL的格式,格式中保留节目id的占位符;2、编写正则,提取异步请 求返回的文本信息的指定数据;3、对节目进行解析,通过正则表达式提取该节目对应的id 信;4、用节目id值取代异步请求格式中的id占位符,组成完整的异步请求链接;5、对异步 请求链接进行解析,通过正则提取出需要的属性信息。对异步请求进行拼接提取,并解析异 步请求返回的数据信息,很好地解决了异步数据的抓取问题。针对异步信息的抓取,也可以 用程 序模拟浏览器解析节目链接的方式,执行JavaScript脚本和发送异步信息,完成对页 面的整体渲染,然后对渲染后的页面进行信息抓取。作为本发明的视频网站的信息抓取方法的优选实施例,如待抓取的网页需要使用 代理访问,则步骤Sl之前包括步骤设置代理服务器的IP、代理端口以及代理用户名密码; 如具有多个抓取出口 IP,指定出口 IP对所述网页的源文件进行抓取。代理的设置可以抓取 需要代理访问的网页,并且可以根据用户需要指定出口 IP进行网页的抓取。如图8所示,在本发明的视频网站的信息抓取方法的具体实施例的网页提取流程 图中,按照属性提取视频节目网页中的多方面数据,定位准确,提供用户丰富的数据参考 点。对于通用的抓取方法,一般只做网页下载或进行简单的网页解析。但是对于网络音视频 节目而言,用户需要的信息更加精确和丰富。用户在意节目点击数、回复数、上传人、上传时 间、图片、节目标签、节目简介等。程序本身无法智能地将网页中的信息和节目属性对应,通 过正则匹配的引入,音视频网络抓取程序同时抽取页面中的多个信息并与相关属性对应。 举例
所属站点域名正则表达式正则类型id
权利要求
一种视频网站的信息抓取方法,其特征在于,包括步骤S1、抓取视频网站的网页的源文件;S2、针对不同格式的网页,指定不同的正则表达式集合对所述网页的源文件中视频节目的属性信息进行定位,产生定位结果;S3、根据所述定位结果,将所述网页的源文件与所述正则表达式集合中的正则表达式进行匹配,产生匹配结果;S4、根据所述匹配结果,将所述网页的源文件中视频节目的属性信息存入相应的属性库中。
2.根据权利要求1所述的视频网站的信息抓取方法,其特征在于,步骤S3包括步骤531、根据所述定位结果,对所述网页的源文件与本地标签库进行对比,产生对比结果;532、根据所述对比结果,过滤所述网页的源文件;533、将过滤后的网页的源文件与所述正则表达式集合中的正则表达式进行匹配,产生 匹配结果。
3.根据权利要求1所述的视频网站的信息抓取方法,其特征在于,步骤Sl之前包括步骤501、解析所述网页的当层链接,得到下一层链接;502、重复步骤SOl直到最大抓取时间;503、根据所述网页链接的解析结果得到待抓取的网页。
4.根据权利要求3所述的视频网站的信息抓取方法,其特征在于,所述步骤S03包括5031、确定待抓取的域名范围和所述网页链接的过滤正则;5032、根据所述域名范围和过滤正则对所述网页进行过滤;5033、根据所过滤后的网页链接的解析结果得到待抓取的网页。
5.根据权利要求3所述的视频网站的信息抓取方法,其特征在于,步骤SOl包括 SOlU建立存放域名以及对应的字符集的域名字符集集合;5012、提取待解析链接中的子域名;5013、如果所述域名字符集集合中存在所述子域名,则直接提取相应的域名字符集进 行解析,如果所述域名字符集集合中不存在所述子域名,则对所述子域名进行解析并将所 述子域名以及对应的域名字符集存入所述域名字符集集合中。
6.根据权利要求1所述的视频网站的信息抓取方法,其特征在于, 如待抓取的网页为跳转网页,则步骤Sl之前包括步骤581、编写对应的所述跳转网页的URL规则以及所述跳转网页中的节目下载链接的URL 规则的跳转正则;582、根据所述跳转正则提取所述跳转网页;583、解析所述跳转网页的链接;584、根据所述跳转网页的链接的解析结果得到待抓取的网页。
7.根据权利要求1所述的视频网站的信息抓取方法,其特征在于, 如待抓取的网页为包含异步信息的网页,则步骤Sl之前包括步骤S91、编写所述包含异步信息的网页中的节目id值以及异步请求URL规则的异步正则;·592、根据所述异步正则提取所述包含异步信息的网页的异步信息;并通过所述异步信 息得到异步请求链接;·593、解析所述异步请求链接;·594、根据所述异步请求链接的解析结果得到待抓取的网页。
8.根据权利要求1所述的视频网站的信息抓取方法,其特征在于, 如待抓取的网页需要使用代理访问,则步骤Sl之前包括步骤 设置代理服务器的IP、代理端口以及代理用户名密码。
9.根据权利要求1所述的视频网站的信息抓取方法,其特征在于,如具有多个抓取出 口 IP,指定出口 IP对所述网页的源文件进行抓取。
全文摘要
本发明涉及一种视频网站的信息抓取方法,其中包括步骤S1、抓取视频网站的网页的源文件;S2、针对不同格式的网页,指定不同的正则表达式集合对所述网页的源文件中视频节目的属性信息进行定位,产生定位结果;S3、根据所述定位结果,将所述网页的源文件与所述正则表达式集合中的正则表达式进行匹配,产生匹配结果;S4、根据所述匹配结果,将所述网页的源文件中视频节目的属性信息存入相应的属性库中。采用本发明的视频网站的信息抓取方法可完整、方便的抓取视频网站中的全部视频信息,避免了现有的视频网站的信息抓取技术不能完整的获取视频网站节目的所有信息的缺陷。
文档编号G06F17/30GK101937469SQ201010284859
公开日2011年1月5日 申请日期2010年9月15日 优先权日2010年9月15日
发明者景晓军, 殷廷圣, 沈智杰 申请人:深圳市任子行网络技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1