029-89353355
乐鱼体育直播下载 contact us
手机:18991830957
座机:029-89353355
Q Q:359316042
邮箱:xr@x-barcode.com
地址:西安市雁塔区雁塔西路158号双鱼大厦A座13层
企业公众号
产品介绍
先前简单的介绍了一下《基于大数据平台的互联网数据采集平台基本架构》,今天主要介绍一下采集的各个环节中,应该如何处理,应该注意哪些方面。
先前在(《3人团队,如何管理10万采集网站?(最全、最细解读)》)一文中,有介绍网站、栏目如何批量添加等,这里就不在累述。
其方法主要有两种。一是人工筛选;二是设置过滤词;当配置的网站或栏目的名称中包含词,则系统后台直接过滤掉,不再进行正则解析、保存等。
上面是基本规律,配置时还需要根据实际情况,具体分析处理。如一些地方性网站,虽然小,但是和业务贴合度高,且每日发文也较频繁,那么就可以把采集频率设置为30分钟或者60分钟。
在网站/栏目采集加入常规化以后,就需要根据一段时间内的发文规律,自动分析出采集频率。这样,可以使我们的服务器等资源的利用率,达到最大化,减少浪费。
虽然说我们采集了很多网站,但是相对于整个互联网来说,还是九牛一毛。那么,我们能够通过什么方式,高效、低廉的获取我们所需要的数据呢?
通过分析我们产品、项目的业务需求,整理出相关的关键词,就能够通过搜索引擎,很快的获取到我们需要的一部分数据了。我们就能够较快的响应客户的需求,提高用户体验,提供下单率。
但是,搜索引擎比较多,为了我们能够灵活的进行添加、删除、修改等,同样需要集成到信源系统。同时,我们也能够在信源系统中,随时监控状态,实时调整采集策略。
对于微信公众号的文章采集,就目前来说,能够实现批量,且较稳定、快速、高效的方法,就是基于手机XPosed插件的采集方式。
因为每个手机上只能安装一个XPosed插件,就只能hook一个微信号。而且每个微信号最多只能关注999个公众号,比如要监测100万公众号的话,就需要一千部手机。按一部手机800元,使用三年,第一年需要花费60万左右。加上10%损耗,平均35万/年。
因为一个微信号最多只能关注999个公众号,如果要监测100万公众号,就需要一千个微信号,再加上10%的封号概率。第一年至少需要1100个微信号。
主要体现在封号上。如果是临时封号的话,可以通过手机号解封。如果是永久封号,那就需要把当前微信号中关注的公众号,重新在其他微信号上进行关注监测了。这个过程需要二十天左右才能结束。
由于微博的搜索列表中,并未显示搜索词相关的所有信息,所以需要同时监测一部分博主,二者相互补充。
做舆情或者数据服务的公司,数据采集涉及到的服务器至少也得几十台。为了便于掌握这些服务器什么时候到期、续费、以及服务器配置等情况,我们倾向于把服务器的管理,同任务调度一起设计,不使用云平台提供的控制端。
在做搜索采集时,搜索词一般是根据项目或者产品的数据范围整理而来。所以,在添加元搜索关键词时,一般与项目绑定。所以,项目也就需要统一管理了。
由于大批量数据采集中,每天采集到的数据量级至少在百万。所以,我们不可能把很长一段时间内采集下来的数据,全都放在一个ES索引库中。
我们在实际使用中,首先把信息分类。如:新闻、论坛、博客、微博、客户端、微信和纸媒等,如果采集有国外网站,可以加一个外媒类型。
虽然把数据按类型进行了归类,但是每一类数据也不可能始终存放在一个索引中。所以,还需要对索引按某一规律进行生成。如按时间,每周或者每月生成一个某一类型的索引。
为了提高ES集群的工作效率,我们可以根据实际业务需求,关闭距当前时间较长的冷索引,比如关闭半年以前生成的ES索引。这样能够减少服务器内存、硬盘的浪费,也能够提高热索引的查询速度,增强产品的用户体验。
同时,为了掌握ES集群中每个索引的情况,我们需要记录索引的创建时间、最后一次保存数据时间、索引名称、索引类型、数据量、数据类型、以及包含哪些字段等。
记录索引信息,一是为了方便了解当前各类型数据所在索引库;二是为了便于各类统计、报告所需数据导出等。
网站、栏目、搜索引擎、服务器、采集器等监控就不在累述,先前的《数据采集中,如何建立一套行之有效的监控体系?》一文中有详细的介绍,大家可以翻看一下。
分布式大批量数据采集中,涉及到采集的网站、栏目或频道的数量级至少是万级、十万级,更有甚者是百万级。
采集器在处理采集任务中,最重要的三部分是:网页下载、翻页、数据解析。其中各部分处理中需要注意的事项如下:
在大批量数据采集中,不建议设置翻页。主要是翻页信息的维护比较麻烦。为了不漏采数据,可以适度的增加采集频率,来弥补未翻页带来的影响。
标题一般使用采集URL地址时A标签的值。然后在正文解析时进行二次校验,来纠正标题可能存在的错误。
一般是清除HTML源码中css样式、JS、注释、meta等信息后,删除HTML标签,取内容中第一个时间作为发布时间。
一般可以统计一些发布时间标识,如:“发布时间:”,“发布日期”等。然后,通过正则表达式,获取该标识前后100个长度的字符串中的时间,作为发布时间。
对于公司来说,有常规采集,还有基于项目、产品进行的定制采集。并且有些项目或产品定制脚本较多,如果数据保存方式(或者数据推送方式)不统一,一旦出现问题,就极难排查。而且还浪费时间、增加人力成本开销。
舆情或数据服务公司,数据采集人员相对较多,技术水平参差不齐。为了减少各级人员开发过程中的BUG量,可以提炼采集各个部分中,耦合较低的模块定制开发,然后制作成第三方插件,下发并安装到各开发人员的环境中。这样可以极大地减少开发中BUG的概率,有效地提供工作效率,
网站改版以后,随之而来的就是信息正则、翻页正则、采集模板等失效,导致网站采集异常。不仅浪费资源,还会影响采集的效率。
上面的几个导致数据漏采的原因,都可以通过监测体系,很快的发现并定位问题。由于监控体系的建立,可以参考先前发表的《数据采集中,如何建立一套行之有效的监控体系?》一文。
如果你是个人,只是简单的采集一些数据写个论文,或这个测试什么,那这篇文章看到这里就可以结束了;
如果你是做舆情或者数据分析的公司,第三方平台则是一个很好的数据补充来源。一方面,可以补充我们漏采的数据,提高用户体验。另一方面,还可以从他们的数据中,分析出信息的来源网站,补充我们自己的信源库。
远哈舆情其实就是新浪舆情通。所以,远哈的微博数据应该是市面上最全、时效性最好的了。网站、客户端、纸媒等类型数据其实都差不多,就看投入的多少了。一般
特点:微信公众号文章数据还可以,每天的量在80~150万之间,他们的费用应该是市面上比较合适的。如果你们公司有这个需求,可以对接他们。微博等其他数据,暂时未对接过,质量如何不得而知了。
上一篇:军事科学院数据采集系统采购询价公 下一篇:数据采集器AWT100-WiFi