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

要玩大数据,没有数据怎么玩?这里推荐一些33款开源爬虫软件给大家。

爬虫,即网络爬虫,是一种自动获取网页内容的程序。是搜索引擎的重要组成部分,因此搜索引擎优化很大程度上就是针对爬虫而做出的优化。

网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。

世界上已经成型的爬虫软件多达上百种,本文对较为知名及常见的开源爬虫软件进行梳理,按开发语言进行汇总。虽然搜索引擎也有爬虫,但本次我汇总的只是爬虫软件,而非大型、复杂的搜索引擎,因为很多兄弟只是想爬取数据,而非运营一个搜索引擎。

1、Arachnid

Arachnid是一个基于Java的webspider框架.它包含一个简单的HTML剖析器能够分析包含HTML内容的输入流.通过实现Arachnid的子类就能够开发一个简单的Webspiders并能够在Web站上的每个页面被解析之后增加几行代码调用。Arachnid的下载包中包含两个spider应用程序例子用于演示如何使用该框架。

特点:微型爬虫框架,含有一个小型HTML解析器

许可证:GPL

2、crawlzilla

crawlzilla是一个帮你轻松建立搜索引擎的自由软件,有了它,你就不用依靠商业公司的搜索引擎,也不用再烦恼公司內部网站资料索引的问题。

crawlzilla除了爬取基本的html外,还能分析网页上的文件,如(doc、pdf、ppt、ooo、rss)等多种文件格式,让你的搜索引擎不只是网页搜索引擎,而是网站的完整资料索引库。

拥有中文分词能力,让你的搜索更精准。

crawlzilla的特色与目标,最主要就是提供使用者一个方便好用易安裝的搜索平台。

特点:安装简易,拥有中文分词功能

3、Ex-Crawler

Ex-Crawler是一个网页爬虫,采用Java开发,该项目分成两部分,一个是守护进程,另外一个是灵活可配置的Web爬虫。使用数据库存储网页信息。

特点:由守护进程执行,使用数据库存储网页信息

4、Heritrix

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

Heritrix采用的是模块化的设计,各个模块由一个控制器类(CrawlController类)来协调,控制器是整体的核心。

特点:严格遵照robots文件的排除指示和METArobots标签

5、heyDr

heyDr是一款基于java的轻量级开源多线程垂直检索爬虫框架,遵循GNUGPLV3协议。

用户可以通过heyDr构建自己的垂直资源爬虫,用于搭建垂直搜索引擎前期的数据准备。

特点:轻量级开源多线程垂直检索爬虫框架

6、ItSucks

ItSucks是一个javawebspider(web机器人,爬虫)开源项目。支持通过下载模板和正则表达式来定义下载规则。提供一个swingGUI操作界面。

特点:提供swingGUI操作界面

7、jcrawl

jcrawl是一款小巧性能优良的的web爬虫,它可以从网页抓取各种类型的文件,基于用户定义的符号,比如email,qq.

特点:轻量、性能优良,可以从网页抓取各种类型的文件

8、JSpider

JSpider是一个用Java实现的WebSpider,JSpider的执行格式如下:

jspider[URL][ConfigName]

JSpider的行为是由配置文件具体配置的,比如采用什么插件,结果存储方式等等都在conf\[ConfigName]\目录下设置。JSpider默认的配置种类很少,用途也不大。但是JSpider非常容易扩展,可以利用它开发强大的网页抓取与数据分析工具。要做到这些,需要对JSpider的原理有深入的了解,然后根据自己的需求开发插件,撰写配置文件。

特点:功能强大,容易扩展

9、Leopdo

用JAVA编写的web搜索和爬虫,包括全文和分类垂直搜索,以及分词系统

特点:包括全文和分类垂直搜索,以及分词系统

10、MetaSeeker

是一套完整的网页内容抓取、格式化、数据集成、存储管理和搜索解决方案。

网络爬虫有多种实现方法,如果按照部署在哪里分,可以分成:

1,服务器侧:一般是一个多线程程序,同时下载多个目标HTML,可以用PHP,Java,Python(当前很流行)等做,可以速度做得很快,一般综合搜索引擎的爬虫这样做。但是,如果对方讨厌爬虫,很可能封掉你的IP,服务器IP又不容易改,另外耗用的带宽也是挺贵的。建议看一下Beautifulsoap。

MetaSeeker中的网络爬虫就属于后者。

MetaSeeker工具包利用Mozilla平台的能力,只要是Firefox看到的东西,它都能提取。

MetaSeeker工具包是免费使用的

特点:网页抓取、信息提取、数据抽取工具包,操作简单

11、Playfish

playfish是一个采用java技术,综合应用多个开源java组件实现的网页抓取工具,通过XML配置文件实现高度可定制性与可扩展性的网页抓取工具

使用方法,1.下载右边的.war包导入到eclipse中,2.使用WebContent/sql下的wcc.sql文件建立一个范例数据库,3.修改src包下wcc.core的dbConfig.txt,将用户名与密码设置成你自己的mysql用户名密码。4.然后运行SystemCore,运行时候会在控制台,无参数会执行默认的example.xml的配置文件,带参数时候名称为配置文件名。

系统自带了3个例子,分别为baidu.xml抓取百度知道,example.xml抓取我的javaeye的博客,bbs.xml抓取一个采用discuz论坛的内容。

特点:通过XML配置文件实现高度可定制性与可扩展性

12、Spiderman

Spiderman是一个基于微内核+插件式架构的网络蜘蛛,它的目标是通过简单的方法就能将复杂的目标网页信息抓取并解析为自己所需要的业务数据。

怎么使用?

首先,确定好你的目标网站以及目标网页(即某一类你想要获取数据的网页,例如网易新闻的新闻页面)

然后,打开目标页面,分析页面的HTML结构,得到你想要数据的XPath,具体XPath怎么获取请看下文。

最后,在一个xml配置文件里填写好参数,运行Spiderman吧!

特点:灵活、扩展性强,微内核+插件式架构,通过简单的配置就可以完成数据抓取,无需编写一句代码

13、webmagic

webmagic的是一个无须配置、便于二次开发的爬虫框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫。

webmagic采用完全模块化的设计,功能覆盖整个爬虫的生命周期(链接提取、页面下载、内容抽取、持久化),支持多线程抓取,分布式抓取,并支持自动重试、自定义UA/cookie等功能。

webmagic包含强大的页面抽取功能,开发者可以便捷的使用cssselector、xpath和正则表达式进行链接和内容的提取,支持多个选择器链式调用。

特点:功能覆盖整个爬虫生命周期,使用Xpath和正则表达式进行链接和内容的提取。

备注:这是一款国产开源软件,由黄亿华贡献

14、Web-Harvest

Web-Harvest是一个Java开源Web数据抽取工具。它能够收集指定的Web页面并从这些页面中提取有用的数据。Web-Harvest主要是运用了像XSLT,XQuery,正则表达式等这些技术来实现对text/xml的操作。

特点:运用XSLT、XQuery、正则表达式等技术来实现对Text或XML的操作,具有可视化的界面

15、WebSPHINX

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

开发语言:Java

特点:由两部分组成:爬虫工作平台和WebSPHINX类包

16、YaCy

YaCy基于p2p的分布式Web搜索引擎.同时也是一个Http缓存代理服务器.这个项目是构建基于p2pWeb索引网络的一个新方法.它可以搜索你自己的或全局的索引,也可以Crawl自己的网页或启动分布式Crawling等.

特点:基于P2P的分布式Web搜索引擎

17、QuickRecon

QuickRecon是一个简单的信息收集工具,它可以帮助你查找子域名名称、performzonetransfe、收集电子邮件地址和使用microformats寻找人际关系等。QuickRecon使用python编写,支持linux和windows操作系统。

特点:具有查找子域名名称、收集电子邮件地址并寻找人际关系等功能

18、PyRailgun

这是一个非常简单易用的抓取工具。支持抓取javascript渲染的页面的简单实用高效的python网页爬虫抓取模块

特点:简洁、轻量、高效的网页抓取框架

备注:此软件也是由国人开放

19、Scrapy

Scrapy是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便~

特点:基于Twisted的异步处理框架,文档齐全

20、hispider

HiSpiderisafastandhighperformancespiderwithhighspeed

严格说只能是一个spider系统的框架,没有细化需求,目前只是能提取URL,URL排重,异步DNS解析,队列化任务,支持N机分布式下载,支持网站定向下载(需要配置hispiderd.iniwhitelist).

特征和用法:

工作流程:

特点:支持多机分布式下载,支持网站定向下载

21、larbin

特点:高性能的爬虫软件,只负责抓取不负责解析

22、Methabot

Methabot是一个经过速度优化的高可配置的WEB、FTP、本地文件系统的爬虫软件。

23、NWebCrawler

NWebCrawler是一款开源,C#开发网络爬虫程序。

特性:

特点:统计信息、执行过程可视化

24、Sinawler

国内第一个针对微博数据的爬虫程序!原名“新浪微博爬虫”。

本程序的特点:

1、6个后台工作线程,最大限度挖掘爬虫性能潜力!

2、界面上提供参数设置,灵活方便

3、抛弃app.config配置文件,自己实现配置信息的加密存储,保护数据库帐号信息

4、自动调整请求频率,防止超限,也避免过慢,降低效率

5、任意对爬虫控制,可随时暂停、继续、停止爬虫

6、良好的用户体验

25、spidernet

spidernet是一个以递归树为模型的多线程web爬虫程序,支持text/html资源的获取.可以设定爬行深度,最大下载字节数限制,支持gzip解码,支持以gbk(gb2312)和utf8编码的资源;存储于sqlite数据文件.

源码中TODO:标记描述了未完成功能,希望提交你的代码.

特点:以递归树为模型的多线程web爬虫程序,支持以GBK(gb2312)和utf8编码的资源,使用sqlite存储数据

26、WebCrawler

martandSimpleWebCrawler是一个Web爬虫框架。集成Lucene支持。该爬虫可以从单个链接或一个链接数组开始,提供两种遍历模式:最大迭代和最大深度。可以设置过滤器限制爬回来的链接,默认提供三个过滤器ServerFilter、BeginningPathFilter和RegularExpressionFilter,这三个过滤器可用AND、OR和NOT联合。在解析过程或页面加载前后都可以加监听器。介绍内容来自Open-Open

27、网络矿工

网站数据采集软件网络矿工采集器(原soukey采摘)

Soukey采摘网站数据采集软件是一款基于.Net平台的开源软件,也是网站数据采集软件类型中唯一一款开源软件。尽管Soukey采摘开源,但并不会影响软件功能的提供,甚至要比一些商用软件的功能还要丰富。

特点:功能丰富,毫不逊色于商业软件

28、OpenWebSpider

OpenWebSpider是一个开源多线程WebSpider(robot:机器人,crawler:爬虫)和包含许多有趣功能的搜索引擎。

特点:开源多线程网络爬虫,有许多有趣的功能

29、PhpDig

PhpDig是一个采用PHP开发的Web爬虫和搜索引擎。通过对动态和静态页面进行索引建立一个词汇表。当搜索查询时,它将按一定的排序规则显示包含关键字的搜索结果页面。PhpDig包含一个模板系统并能够索引PDF,Word,Excel,和PowerPoint文档。PHPdig适用于专业化更强、层次更深的个性化搜索引擎,利用它打造针对某一领域的垂直搜索引擎是最好的选择。

特点:具有采集网页内容、提交表单功能

30、ThinkUp

ThinkUp是一个可以采集推特,facebook等社交网络数据的社会媒体视角引擎。通过采集个人的社交网络账号中的数据,对其存档以及处理的交互分析工具,并将数据图形化以便更直观的查看。

特点:采集推特、脸谱等社交网络数据的社会媒体视角引擎,可进行交互分析并将结果以可视化形式展现

31、微购

32、Ebot

Ebot是一个用ErLang语言开发的可伸缩的分布式网页爬虫,URLs被保存在数据库中可通过RESTful的HTTP请求来查询。

特点:可伸缩的分布式网页爬虫

33、Spidr

Spidr是一个Ruby的网页爬虫库,可以将整个网站、多个网站、某个链接完全抓取到本地。

THE END
1.StatusStripクラス(System.Windows.Forms)MicrosoftLearnStatusStrip をコンテナーの端から端まで拡大するかどうかを示す値を取得または設定します。 TabIndex コンテナー内のコントロールのタブ オーダーを取得または設定します。 (継承元 Control) TabStop ユーザーが Tab キーを使用して ToolStrip 内の項目にフォーカスを移すことができるかどhttps://msdn.microsoft.com/ja-jp/library/y65xh9d8(v=vs.100)
2.900款经典街机InternetArcade任你玩键鼠新闻网站地址:https://archive.org/details/internetarcade(无法直接进入,具体方法你懂得) 【感谢您阅读本文,请您点击文章结尾下方的黄色“赞”,以便让我们做的更好】 大家扫面下面二维码即可关注键鼠频道微博与微信,掌握第一手外设资讯 中关村在线键鼠频道微博 中关村在线键鼠频道微信https://mouse.zol.com.cn/488/4882319.html
3.InternetArchiveBookReader开源项目教程如果没有安装,请访问Node.js 官网下载并安装。 2.2 克隆项目 首先,克隆 BookReader 项目到本地: gitclonehttps://github.com/internetarchive/bookreader.git cdbookreader 2.3 安装依赖 进入项目目录后,安装所需的依赖包: npm install 2.4 构建项目 使用以下命令构建项目: https://blog.csdn.net/gitblog_00970/article/details/142607558
4.EnterpriseOpenSourceandLinuxUbuntuUbuntu is the modern, open source operating system on Linux for the enterprise server, desktop, cloud, and IoT.https://ubuntu.com/
5.InternetArchive·GitHubThe Internet Archive is "the library of the Internet", and a big supporter of Free Software. - Internet Archivehttps://github.com/internetarchive
6.TheInternetArchiveIsMakingWikipediaMoreReliableWIREDonly $30 $5 for one year. get digital access the internet archive is making wikipedia more reliable the operator of the wayback machine allows wikipedia's users to check citations from books as well as the web. photograph: alexander spatari/getty images save save wikipedia is the arbiter https://www.wired.com/story/internet-archive-wikipedia-more-reliable/
7.致尚科技信披矛盾下历史关联方现身昔日产品神秘失踪或为创始股东让路通过致尚科技官网,可以跳转到致尚科技曾经使用的另一官网(以下简称“致尚科技B官网”)。 据Internet archive回溯致尚科技B官网可知,2013年9月4日,致尚科技B官网的版权所有人为ZISUNTechnology Co.,Ltd。 需要指出的是,ZISUN TechnologyCo.,Ltd为致尚科技曾用的英文名。 https://stock.hexun.com/2022-08-18/206593347.html
8.黑群晖安装和使用的常见问题及解决办法不定期更新中而用U盘做引导的话,引导坏了直接重新刷U盘,或者换个新的U盘,对数据一点都不会影响。其实“U盘不能休眠”的说法是不准确的,能否休眠,要看你的硬件是否支持,另外还要看你是否安装了影响休眠的套件(具体请查阅官网:为什么我的 Synology NAS 无法进入休眠模式?)。https://cloud.tencent.com/developer/article/2147483
9.SearchingthewebbuildsfullerpictureofarachnidtradeIn addition to the sampling of contemporary sites, we explored the archived pages available forhttps://www.terraristik.comvia the Internet Archive (2002–201967). Terraristika had been previously shown as a major contributor to traded species lists4, and the website’s age and accessibility viahttps://www.nature.com/articles/s42003-022-03374-0
10.CUDAToolkitGet exclusive access to hundreds of SDKs, technical trainings, and connect with other developers and researchers.https://www.nvidia.com/content/cuda/cuda-toolkit.html
11.百度云智学院云计算在线认证考试课程纲要与重点,考前必看!登录百度智能云官网。 登录成功后,选择“产品服务>云服务器 BCC”,进入“实例列表”页面。 (可选)选择区域,请根据实际需求进行选择切换。 百度智能云目前开放多区域支持,如果您需要在多区域创建BCC实例,请参考区域选择说明。 在不同区域创建的实例相互独立。 https://blog.51cto.com/u_16011718/6238772