c#抓取网页数据(一种基于C#抓取互联网公开数据的爬虫系统及抓取方法)

优采云 发布时间: 2021-11-18 11:05

  c#抓取网页数据(一种基于C#抓取互联网公开数据的爬虫系统及抓取方法)

  一种基于C#抓取互联网公共数据的爬虫系统及爬虫方法,属于数据领域采集;爬虫系统包括爬虫程序模块,爬虫程序模块用于浏览、爬取和验证数据Server,服务器数量至少为2台,其中部署有爬虫程序模块。目标站,爬虫程序模块对确定的目标站进行浏览抓取数据;非关系型数据库,表示非关系型数据库用于存储爬虫程序模块捕获的有效数据;它还包括第三方接口,用于外部验证码识别和破解程序模块。本发明专利技术描述的爬虫系统可以外接验证码识别破解程序模块,支持多种验证码破解,可以更好更快地访问目标站点。支持部署到多台服务器,降低服务器负载压力,运行、存储更多数据;支持NOSQL数据存储,读取速度大幅提升。

  下载所有详细的技术数据

  【技术实现步骤总结】

  某种

  本专利技术属于数据采集

  ,具体涉及一种爬取互联网公共数据的爬虫系统及方法。

  技术介绍

  网络爬虫是一种自动浏览互联网并按照一定规则自动抓取网页信息的程序或脚本。它是搜索引擎的重要组成部分。搜索引擎在实现网络爬虫的功能时,通常需要一个爬虫系统。完成。目前市场上的爬虫系统或框架大多采用Python、Java、PHPcrawer等技术。C#很少用于爬虫,C#爬虫系统也很少见,而且因为C#是面向对象的一种基于.NET Framework的高级编程语言,它可以让程序员快速编写基于MICROSOFT.NET平台的各种应用程序。如果你设计开发一个基于C#的爬虫系统来抓取互联网公共数据,将会大大提高程序员的

  技术实现思路

  本专利技术的目的是将Python、Java、PHPcrawer等现有技术中的爬虫系统应用到爬虫系统中。C#很少用于爬虫,影响了程序员编写基于MICROSOFT.NET平台的各种应用程序的效率。问题。为实现上述目的,本专利技术提供了一种基于C#抓取互联网公共数据的爬虫系统,包括:爬虫程序模块,用于浏览、抓取和验证数据的爬虫程序模块;server,服务器的数量至少两个,其中部署了爬虫程序模块;目标站,爬虫程序模块浏览并抓取确定的目标站的数据;非关系型数据库,其中非关系型数据库用于存储爬虫程序模块捕获的有效数据。优选地,还包括用于连接验证码识别破解程序模块的第三方接口,验证码识别破解程序模块可以识别和破解目标站的访问请求验证码。优选地,目标站点、非关系数据库和第三方接口也设置在至少两个服务器中。优选地,爬虫程序模块包括参数存储单元、目标站捕获单元、目标站分析判断单元、数据捕获单元和数据验证单元。参数存储单元存储参数,

  优选地,所述数据采集单元与数据校验单元之间还设有数据转换单元,数据采集单元将采集到的数据输出至数据转换单元,由数据转换单元对数据进行转换。该单元使用正则表达式或Json序列化方法对数据进行过滤和提取,然后将数据输出到数据验证单元。优选地,所述数据抓取单元中设有数据分页判断模块,所述数据分页判断模块用于判断数据是否被分页,从而实现数据抓取单元抓取每页数据。优选地,非关系数据库是NoSQL。本专利技术所描述的爬虫系统与现有技术相比具有以下优点:基于C#抓取互联网公共数据,而不是Python、Java、PHPcrawer等技术,可以提高程序员编写基于MICROSOFT.NET的各种平台应用程序的工作效率;可连接验证码识别破解程序模块,支持多种验证码破解,可以更好更快的访问目标站;支持部署到多台服务器,降低服务器的负载压力,运行和存储更多的数据;支持NOSQL数据存储,读取速度大幅提升。本专利技术还提供了一种基于C#的互联网公共数据的抓取方法,包括上述基于C#的互联网公共数据的抓取系统,还包括以下步骤:S100、将爬虫程序模块部署到至少两台服务器上;S200,确定需要采集数据的目标站点,并准备数据请求参数;S300,使用c#语言模拟目标站的访问请求,捕获目标站的数据;S400、抓取到的数据使用正则表达式或Json序列化方法过滤提取;S500,验证抓取到的数据是否与参数匹配,看是否为有效数据;S600,将有效数据存储在非关系型数据库中。捕获的数据使用正则表达式或Json序列化方法过滤提取;S500,验证抓取到的数据是否与参数匹配,看是否为有效数据;S600,将有效数据存储在非关系型数据库中。捕获的数据使用正则表达式或Json序列化方法过滤提取;S500,验证抓取到的数据是否与参数匹配,看是否为有效数据;S600,将有效数据存储在非关系型数据库中。

  优选地,步骤S300包括: S301、判断目标站接入请求是否需要验证验证码,如果验证码需要验证,则抓取请求验证码参数并调用破解验证码服务,然后添加破解结果 在访问请求中,捕获目标站的数据;S302,判断目标站的数据抓取是否成功,如果成功,则进入步骤S400;如果失败,则进入步骤S303;S303,将目标站的访问状态标记为Failed,当爬虫检测到目标站的访问状态失败时,需要重新模拟目标站访问请求来捕获目标站数据,即重复步骤S300,使用c#语言模拟目标站访问请求,然后进入步骤S301,直到判断出目标站,数据获取成功为止。优选地,步骤S400和S500包括寻呼判断,即判断目标站提取的数据是否有寻呼,如果有,则翻页,然后重复步骤S400;如果没有寻呼,则直接进入步骤S500。本专利技术所描述的爬取方法与现有技术相比具有以下优点:增加了重试机制,第一次数据爬取失败时,爬虫程序会自动重启;数据兼容性大大增强,提高数据质量;加强异常处理,提高资源利用率。附图说明图1。附图说明图1是本专利技术第一实施例的履带系统*敏*感*词*;无花果。图2是本专利技术实施例二的抓取方法的步骤*敏*感*词*。无花果。图3是专利技术实施例二抓取方法的流程*敏*感*词*。

  具体实施方式为使本专利技术的上述目的、特征和优点更加明显易懂,下面结合附图对本专利技术的具体实施例进行详细说明。第一实施例参考图1。1、本实施例介绍了一种基于C#抓取互联网公共数据的爬虫系统,包括:爬虫程序模块2,用于浏览、爬取和验证数据;服务器1,服务器1的数量至少为2个,其中部署爬虫程序模块2;目标站3,爬虫程序模块2对确定的目标站3进行浏览抓取数据;non-relational 非关系数据库4用于存储爬虫模块2抓取到的有效数据。具体来说,专利技术中描述的互联网公共数据爬虫系统的爬虫程序模块2是基于C#的,爬虫程序模块2可以是一个烧录爬虫程序的芯片,该芯片安装在至少两个的服务器。在图1中,优选地,爬虫程序模块2部署在每个服务器1中。爬虫程序模块2中目标站3的确定可以人为确定。例如,如果您想获取公司的商业登记信息,您可以到国家工商行政管理总局、当地工商行政管理总局、国家企业信用信息公示系统等相关信息查询。 . 但更优选地,爬虫程序模块2包括参数存储单元,目标站捕获单元、目标站分析判断单元、数据捕获单元和数据验证单元。参数存储单元存储参数,其输出端与目标站捕获单元的输入端相连,目标站捕获单元的输出端与目标站分析判断单元的输入端相连,目标站分析判定单元的输出端连接数据采集单元的输入端 数据采集单元的输出端连接数据校验单元的输入端,数据校验单元连接参数存储器数据校验单元的输出端连接非关系型数据库。目标站分析判断单元、数据采集单元和数据验证单元。参数存储单元存储参数,其输出端与目标站捕获单元的输入端相连,目标站捕获单元的输出端与目标站分析判断单元的输入端相连,目标站分析判定单元的输出端连接数据采集单元的输入端 数据采集单元的输出端连接数据校验单元的输入端,数据校验单元连接参数存储器数据校验单元的输出端连接非关系型数据库。目标站分析判断单元、数据采集单元和数据验证单元。参数存储单元存储参数,其输出端与目标站捕获单元的输入端相连,目标站捕获单元的输出端与目标站分析判断单元的输入端相连,目标站分析判定单元的输出端连接数据采集单元的输入端 数据采集单元的输出端连接数据校验单元的输入端,数据校验单元连接参数存储器数据校验单元的输出端连接非关系型数据库。数据采集​​单元和数据验证单元。参数存储单元存储参数,其输出端与目标站捕获单元的输入端相连,目标站捕获单元的输出端与目标站分析判断单元的输入端相连,目标站分析判定单元的输出端连接数据采集单元的输入端 数据采集单元的输出端连接数据校验单元的输入端,数据校验单元连接参数存储器数据校验单元的输出端连接非关系型数据库。数据采集​​单元和数据验证单元。参数存储单元存储参数,其输出端与目标站捕获单元的输入端相连,目标站捕获单元的输出端与目标站分析判断单元的输入端相连,目标站分析判定单元的输出端连接数据采集单元的输入端 数据采集单元的输出端连接数据校验单元的输入端,数据校验单元连接参数存储器数据校验单元的输出端连接非关系型数据库。

  参数存储单元用于存储提取数据所需的数据请求参数,可根据实际情况进行设置。比如要抓取某公司的工商注册信息,可以设置相关参数为与,公司名称,公司所在省份的关系。这样,参数存储单元中存储的相关参数将是,公司名称:某公司,公司所在省份:上海,同时满足这两个参数。在其他实施例中,参数存储单元中的参数关系可以具有其他设置,例如OR关系。目标站抓取单元接收参数存储单元中的数据请求参数信息,

  

  【技术保护点】

  一种基于C#抓取互联网公共数据的爬虫系统,其特征在于包括: 用于浏览、抓取和验证数据的爬虫程序模块;服务器,所述服务器的数量至少为两个,其中部署有爬虫程序模块;目标站,爬虫程序模块浏览并抓取确定的目标站的数据;非关系型数据库,其中非关系型数据库用于存储爬虫程序模块获取的有效数据。

  【技术特点摘要】

  1. 一种基于C#抓取互联网公共数据的爬虫系统,其特征在于包括: 爬虫程序模块,所述爬虫程序模块用于浏览、抓取和验证数据;服务器,服务器数量至少为两台,其中部署有爬虫程序模块;目标站,爬虫程序模块在确定的目标站上浏览抓取数据;非关系型数据库,其中非关系型数据库用于存储爬虫程序模块捕获的有效数据。2.根据权利要求1所述的基于C#抓取互联网公共数据的爬虫系统,其特征在于还包括第三方接口外部验证码识别破解程序模块,所述验证码识别破解程序模块可以识别并破解目标站的访问请求验证码。3.根据权利要求2所述的基于C#抓取互联网公共数据的爬虫系统,其特征在于,所述目标站、非关系型数据库和第三方接口还设置在至少两个服务器中。4.根据权利要求1所述的基于C#抓取互联网公共数据的爬虫系统,其特征在于,所述爬虫程序模块包括:参数存储单元、目标站捕获单元、目标站分析判断单元、数据捕获单元,数据校验单元;参数存储单元存储参数,其输出端连接目标站捕获单元的输入端,目标站捕获单元的输出端连接目标站分析判断单元的输入端,目标站分析判断单元的输出端连接数据捕获单元的输入端,数据采集​​单元与数据校验单元的输入端相连,数据校验单元与参数存储单元相连,数据校验单元的输出端与非关系型数据库相连。5.根据权利要求4所述的基于C#抓取互联网公共数据的爬虫系统,其特征在于,数据转换单元和数据抓取单元将抓取到的数据输出给数据转换单元,数据通过数据转换单元使用正则表达式或Json序列化方法进行过滤提取,然后输出到数据校验单元。6.根据权利要求4所述的一种基于C#抓取互联网公共数据的爬虫系统,其特征在于,在数据抓取单元中...

  【专利技术属性】

  技术研发人员:王杰、王金虎、邓惠林、

  申请人(专利权):,

  类型:发明

  国家省市:江苏,32

  下载所有详细的技术资料 我是此专利的拥有者

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线