原标题:Java开源Web爬虫项目

百度百科解释 网络爬虫:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

项目一:Heritrix

Heritrix 是一个由 Java 开发的、开源的网络爬虫,用户可以使用它来从网上抓取想要的资源。其最出色之处在于它良好的可扩展性,方便用户实现自己的抓取逻辑。

Heritrix 是个“Archival Crawler”——来获取完整的、精确的、站点内容的深度复制。包括获取图像以及其他非文本内容。抓取并存储相关的内容。对内容来者不拒,不对页面进行内容上的修改。重新爬行对相同的URL不针对先前的进行替换。爬虫主要通过Web用户界面启动、监控和调整,允许弹性的定义要获取的url。

Heritrix是按多线程方式抓取的爬虫,主线程把任务分配给Teo线程(处理线程),每个Teo线程每次处理一个URL。Teo线程对每个URL执行一遍URL处理器链。URL处理器链包括如下5个处理步骤。

预取链:主要是做一些准备工作,例如,对处理进行延迟和重新处理,否决随后的操作。

提取链:主要是下载网页,进行DNS转换,填写请求和响应表单。

抽取链:当提取完成时,抽取感兴趣的HTML和Java,通常那里有新的要抓取的URL。

写链:存储抓取结果,可以在这一步直接做全文索引。Heritrix提供了用ARC格式保存下载结果的ARCWriterProcessor实现。

提交链:做和此URL相关操作的最后处理。检查哪些新提取出的URL在抓取范围内,然后把这些URL提交给Frontier。另外还会更新DNS缓存信息。

项目二:WebSPHINX

WebSPHINX 是一个 Java 类包和 Web 爬虫的交互式开发环境。 Web 爬虫 ( 也叫作机器人或蜘蛛 ) 是可以自动浏览与处理 Web 页面的程序。 WebSPHINX 由两部分组成:爬虫工作平台和 WebSPHINX 类包。

WebSPHINX 是一个 Java 类包和 Web 爬虫的交互式开发环境。 Web 爬虫 ( 也叫作机器人或蜘蛛 ) 是可以自动浏览与处理 Web 页面的程序。 WebSPHINX 由两部分组成:爬虫工作平台和 WebSPHINX 类包。

WebSPHINX用途:

可视化显示页面的集合

下载页面到本地磁盘用于离线浏览

将所有页面拼接成单个页面用于浏览或者打印

按照特定的规则从页面中抽取文本字符串

用Java或Java开发自定义的爬虫

详细介绍可见

项目三:Encog

Encog是一个高级神经网络和机器人/爬虫开发类库。Encog提供的这两种功能可以单独分开使用来创建神经网络或HTTP机器人程序,同时Encog还支持将这两种高级功能联合起来使用。Encog支持创建前馈神经网络、Hopfield神经网络、自组织图。

Encog提供高级HTTP机器人/爬虫编程功能。支持将多线程爬虫产生的内容存在内存或数据库中。支持HTM解析和高级表单与Cookie处理。

Encog是一种先进的机器学习框架,它支持多种先进的算法,以及支持类正常化和处理数据。机器学习算法,如支持向量机,人工神经网络,遗传编程,贝叶斯网络,隐马尔可夫模型,遗传编程和遗传算法的支持。大多数Encog培训algoritms是多线程的,很好地扩展到多核硬件。Encog还可以使用一个GPU,以进一步加快处理时间。一个基于GUI的工作台也提供帮助模型和火车机器学习算法。自2008年以来Encog一直在积极发展。

Encog 支持多种语言,包括C#、Java和C。

在GitHub上有各种语言版本的源代码。

http://www.heatonresearch.com/encog

https://github.com/encog返回搜狐,查看更多

责任编辑:

java web 爬虫_Java开源Web爬虫项目相关推荐

  1. java web定时器_java的web项目中使用定时器 | 学步园

    之前接触过程序中的定时任务,但是没去自己亲自尝试过.终于这次抽空搞了一下.(一定要自己去操作,才能长经验,光看到过是没用的) 以下是两种方法,我使用的是监听的方法. JAVA WEB定时器,定时器的启 ...

  2. java抓取图片_Java实现的爬虫抓取图片并保存操作示例

    本文实例讲述了Java实现的爬虫抓取图片并保存操作.分享给大家供大家参考,具体如下: 这是我参考了网上一些资料写的第一个java爬虫程序 本来是想获取煎蛋网无聊图的图片,但是网络返回码一直是503,所 ...

  3. java 浏览器 爬虫_java 网络编程-爬虫+模拟浏览器

    网络爬虫+模拟浏览器(获取有权限网站资源): 获取URL 下载资源 分析 处理 public class http { public static void main(String[]args) th ...

  4. java写一个web服务器_Java实现web服务器功能(简版) | kTWO-个人博客

    package kTWOServer; import java.io.* ; import java.net.* ; import java.util.* ; final class HttpRequ ...

  5. java mysql工具_Java开源数据库管理工具

    SQuirreL SQL Client SQuirreL SQL Client 是一个用 Java 编写的程序,它允许您查看数据库的内容.发出 SQL 命令,以及如您将看到的,执行许多其他功能.构建该 ...

  6. java uml建模_Java开源UML建模

    ArgoUML 使用java编写的开源UML产品,功能比较全.最受欢迎的UML建模工具. Alma Alma是一个软件建模分析的工作平台,它读取几种不同的源代码,帮你设计面向对像的模型,修改结构和源代 ...

  7. java通讯录工程_JAVA通讯录管理小项目

    **自己写的简单通讯录管理项目** 有集合基本的增删改查,我还没有学数据库什么的,就用对象序列化和反序列化来保存信息了. 本人菜鸟一枚,有不足之处请多指点. package aatroxcarry.t ...

  8. java信息化平台_Java开源企业信息化平台O2OA接入企业钉钉

    此篇参照钉钉新的微应用添加接口规范编写,希望对大家有用. 如果O2OA成功接入钉钉,O2OA将会自动从钉钉拉取所有的人员和组织进行同步,O2OA的所有人员和组织以企业钉钉中创建的组织架构为准( 本地已 ...

  9. java oval 使用_java开源验证框架OVAL应用实例

    java开源验证框架OVAL应用实例 对oval验证框架进行分类,并针对常用的验证规则进行总结,从而可以抽象成模型可以定义,达到定义后自动生成,减少开发人员的工作量,同时也规范化代码结构. 1.  验 ...

最新文章

  1. 告别手敲 SQL ?GPT-3 自动帮你写
  2. android 搜索框 github,Github上Android简单好用的提示框推荐 | 夕辞
  3. python编码格式
  4. (46)分析 INT 0x2E 和 sysenter
  5. PyTorch基础(八)----- torch.split()方法
  6. 【数据库原理及应用】经典题库附答案(14章全)——第六章:关系数据库设计过程
  7. C++中size_type类型详解
  8. makefile——小试牛刀
  9. Hibernate学习资源
  10. 在自平衡中角动量守恒的原理分析
  11. Filter(过滤器)Listene(监听器)笔记
  12. 2019 CSP-S第二轮认证一等奖获奖名单
  13. 看图猜成语小程序设计与实现(小程序+PHP)
  14. java 调用弗雷_深入理解java虚拟机(十一) 方法调用-解析调用与分派调用
  15. 数学表达式基础——1 基本符号与术语
  16. Android应用耗电问题排查
  17. linux取消上一个命令,Linux简介及最常用命令(简单易学,但能解决95%以上的问题)...
  18. 回溯算法(回溯搜索法)
  19. Redis分片主从哨兵集群,原理详解,集群的配置安装,8大数据类型,springboot整合使用
  20. JavaScript爬取网页并分析

热门文章

  1. 欧拉筛法原理C语言,素数筛法
  2. 一篇文章彻底弄懂零拷贝底层原理
  3. python姿态检测实现多人多姿态识别python行为识别openpose行为骨骼框架检测动作识别动作检测行为动作分类
  4. 学习日记day09 ps
  5. 探寻软件的永恒之道 ——评介《建筑的永恒之道》 - 撰文/透明
  6. 二进制部署 单Master Kubernetes-v1.14.1集群
  7. 三人行-有分享才会有行动
  8. iOS 沙盒路径/创建文件夹
  9. 二、获取AccessToken
  10. H265/HEVC编码NAL的单元的介绍