网页抓取数据百度百科(开源中国网络爬虫框架列表33款可用来抓数据的开源爬虫软件工具)

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

  网页抓取数据百度百科(开源中国网络爬虫框架列表33款可用来抓数据的开源爬虫软件工具)

  文章目录爬虫和反爬虫网页节点分析方法Jsoup、WebCollector、Htmlunit分析实例WebMagic介绍及使用WebMagic+Selenium自动登录爬虫实践总结与参考

  本文项目san-spider的源地址

  履带概念

  1、爬虫的基本概念

  爬虫的概念:网络爬虫(在FOAF社区也称为网络蜘蛛、网络机器人,更多时候是网络追逐)是按照一定的规则自动抓取万维网上信息的程序或脚本。这是百度百科对爬虫的定义。其实简单的说,爬虫就是利用编写好的程序自动提取网页信息。

  2、 爬虫分类

  通用爬虫:通用爬虫是搜索引擎(百度、谷歌、雅虎等)“爬虫系统”的重要组成部分。主要目的是将互联网上的网页下载到本地,形成互联网内容的镜像备份。简单来说,就是尽可能多;将互联网上的所有网页下载到本地服务器上,形成备份点,对这些网页进行相关处理(提取关键词,去除广告),最终提供用户搜索界面。

  聚焦爬虫:聚焦爬虫按照指定的要求爬取网络上的指定数据。例如:获取豆瓣上的电影名称和评论,而不是获取整个页面的所有数据值。

  增量爬虫:增量用于检测网站数据的更新,可以爬取网站的更新数据。

  3、爬虫的价值

  网上抓取的数据,对于我来说,数据量很大,就像有一个数据库一样,下一步就是如何将抓取到的数据进行产品化和商业化。

  

  想象

  开源的爬虫框架有很多,各种语言(如:python、java)实现的,有单机的,也有*敏*感*词*分布式的,多达上百种。详情可见:

  开源中文网络爬虫框架列表

  33款可用于抓取数据的开源爬虫软件工具

  爬虫项目经验总结

  github上有哪些优秀的java爬虫项目

  我们的要求不高:

  选择爬虫开源框架后,一定要考虑自己的业务特点,设计自己的项目架构。大多数使用爬虫的人都有类似的基本需求。

  最后,一般的爬虫项目是这样的:

  尽快下拉目标网站的页面

  然后解析出有用的内容

  存储到数据库并缓存在地上

  稍微成熟的爬虫开源框架已经基本实现了第一步。

  在分析了实际业务规则之后,我们需要考虑如何实施和保持更新网站变更策略。

  爬虫框架选择

  可以参考如何选择一个开源的网络爬虫框架吗?

  在考虑选择时,主要有以下参考项目:

  上面提到的爬虫基本上可以分为三类:

  分布式爬虫

  正午:

  优点:分布式爬取、存储和索引、Hadoop支持、丰富的第三方插件

  缺点:使用难度大,用Nutch进行爬虫二次开发,爬虫的准备和调试所需要的时间,往往是单机爬虫所需时间的十倍以上。

  独立爬虫

  对于单机爬虫框架,日常开发中最耗时的部分就是网页内容解析,所以首先要介绍一下优秀的HTML网页解析器:Jsoup和Htmlunit以及神器Selenium

  在上面列出的独立爬虫中,Gecco 是基于注解实现的。官方demo无法运行,体验太差。首先,它会被排除在外。

  至于其他的,功能非常丰富,而且都在不断更新中。

  名称 Github Star 文档丰富度 使用项目数 网络博客帖子丰富度 (10)

  爬虫4j

  3.9k

  5

  199

  6

  网络魔术师

  9.1k

  很完整

  586

  7.5

  网络采集

  2.6k

  7

  72

  7.5

  从以上指标来看,都是优秀的

  根据我的实际项目操作对比,WebMagic文档丰富,上手快,demo项目也很多,所以我每天都在使用WebMagic。

  非Java独立爬虫

  主要说Python爬虫,以Scrapy为头,比较Java的主要优势是

  总之:

  分布式爬虫Nucth有点矫枉过正,开发效率不高,暂时不考虑。

  在日常的Java项目中,我更喜欢WebMagic,当做爬虫工作需要很多时间和精力的时候,我会选择Python的Scrapy。

  爬行动物和反爬行动物

  网站反爬虫策略如何处理?如何高效抓取海量数据?

  爬虫突破禁令的6种常用方法

  常见的反爬虫机制及对策

  爬行动物与反爬行动物之间的博弈

  爬虫和反爬虫都在改进。下面是爬虫和反爬虫应用中涉及到的一些常见知识点。

  网页节点的解析方法

  CSS选择器+Xpath+正则表达式整理

  xpath 表达式

  Jsoup、WebCollector、Htmlunit 分析实例

  Jsoup源代码

  WebCollector 源代码

  接下来我主要在大篇幅介绍Webmagic,因为我会先简单介绍一下其他的解析器。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线