Java网络蜘蛛/网络爬虫 Spiderman

Apache
Java
跨平台
2012-10-21
自风

Spiderman - 又一个Java网络蜘蛛/爬虫

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

最新提示:欢迎来体验最新版本Spiderman2,http://git.oschina.net/l-weiwei/Spiderman2 重新打造,重新起步,努力做更好用的爬虫!

主要特点

* 灵活、可扩展性强,微内核+插件式架构,Spiderman提供了多达 10 个扩展点。横跨蜘蛛线程的整个生命周期。
* 通过简单的配置就可以将复杂的网页内容解析为自己需要的业务数据,无需编写一句代码
* 多线程

怎么使用?

  • 首先,确定好你的目标网站以及目标网页(即某一类你想要获取数据的网页,例如网易新闻的新闻页面)
  • 然后,打开目标页面,分析页面的HTML结构,得到你想要数据的XPath,具体XPath怎么获取请看下文。
  • 最后,在一个xml配置文件里填写好参数,运行Spiderman吧!

这里有个抓取案例

这里有篇文章介绍示例: http://my.oschina.net/laiweiwei/blog/100866

XPath获取技巧?

最新提示:发现Chrome浏览器的控制台可以直接对网页执行xpath调试,只需要输入$x("xpath 表达式")即可实时进行当前打开网页的xpath调试,非常棒!

这里只说下Chrome浏览器,其他浏览器估计也差不多,只不过插件不同而已。

  • 首先,下载xpathonclick插件,https://chrome.google.com/webstore/search/xpathonclick
  • 安装完毕之后,打开Chrome浏览器,可以看到右上角有个“X Path” 图标。
  • 在浏览器打开你的目标网页,然后点击右上角的那个图片,然后点击网标上你想要获取XPath的地方,例如某个标题
  • 这时候按住F12打开JS控制台,拖到底部,可以看到一串XPath内容
  • 记住,这个内容不是绝对OK的,你可能还需要做些修改,因此,你最好还是去学习下XPath语法
  • 学习XPath语法的地方:http://www.w3school.com.cn/xpath/index.asp
的码云指数为
超过 的项目
加载中

评论(24)

q
qweqwe_1000
发现一个很好用的验证码识别平台,识别各类验证码,英数,极验等都可以识别 打码狗: http://www.damagou.top
l
lblin
支持银行控件么?
自风
自风 软件作者
#Spiderman#2 更新:1. 支持XML配置 2.ScriptTransformParser支持 3.至少需要Java1.8以上 4.重新调整了包结构 。 下一步:1.将解析和下载过程分离,使解析变成异步处理 2.重构代码,能使用Java8新语法的地方全都换上 http://git.oschina.net/l-weiwei/Spiderman2
自风
自风 软件作者
#Spiderman# 欢迎来体验最新版本Spiderman2,http://git.oschina.net/l-weiwei/Spiderman2 重新打造,重新起步,努力做更好用的爬虫
帅锅锅
there is no website to fetch... #Spiderman#
自风
自风 软件作者
Spiderman增加了一个HtmlUnit插件,相当于内置了一个浏览器,这样抓取一些动态生成内容的网页写规则抽取就更简单了
自风
自风 软件作者
一年多过去了,什么时候才能有时间精力好好整理下Spiderman,出个GA版~
铂金小猪
铂金小猪
开始学习JAVA啦。 Spiderman
自风
自风 软件作者
Spiderman 最近添加了一个web控制台
自风
自风 软件作者
终于有时间将Spiderman转到git@osc上来了 http://git.oschina.net/l-weiwei/spiderman

暂无资讯

5
回答
Spiderman2 如何使用

如图所示 Spiderman2需要的mvn已经搞好 Spiderman2的文件夹中已经执行 mvn install命令 但是现在我对于Spiderman2...

2017/03/28 15:24
2
回答
如何设置网络代理,进行爬取

@自风 你好,想跟你请教个问题:公司上网都是需要通过http代理,问一下spiderman如何设置代理进行爬取网页。

2013/11/08 09:27
9
回答
关于网络爬虫spiderman的一些问题
自风 的回答 2013/01/25 17:16
最佳答案
1.在你的xml配置文件里面把入口url和target的url都设定为这个页面url,注意target的url规则是equal而不是regex 2.你这种属于一个html页面抓取多个model数据的情况,这里给给你写个解析上述页面那些列表标题和url的例子: <target name="new...
2
回答
spiderman2执行.bat成功,使用eclipse却出现下面报错

@自风 想请教一下,这是什么情况? Results : Tests run: 0, Failures: 0, Errors: 0, Skipped: 0 ...

2016/04/27 20:49
1
回答
真心请各位用过spiderman的好汉进来一下

学生一枚,对编程一窍不通,想用spiderman学一下抓取数据,现在环境搭建好了,可是抓取步骤毫无头绪,所有在oschina上的和spiderman相关的...

2016/04/29 13:56
2
回答
spiderman抓取百度搜索出的新闻

@自风 你好,想跟你请教个问题: 我现在想通过spiderman抓取百度搜索出的所有网页内容,分别贴出xml和debug <?xml version="1...

2013/12/13 10:06
1
回答
spiderman there is no website to fetch

@自风 运行sample出现下面问题,要怎么解决了 [DEBUG] 2015-11-28 13:09:43 [config] ~ (EWeb4JConfi...

2015/11/28 13:36
2
回答
Spiderman 进不了onParse

@自风 你好,想跟你请教个问题: 你好,我现在已经配置好,可以跑起来了,但是用例子里面的list-paging-oschina.xml,enable已经设...

2015/10/28 11:58
1
回答
Site[oschina] loading plugins fail

@自风 你好,想跟你请教个问题: 使用下载的源码编译,跑下面这个配置文件,是从你的文档里面拷贝的,但是报Site[oschina] loading plu...

2015/10/27 17:01
2
回答
spiderman想抓取分页页面列表的信息,而不是进入每个列表后页面的具体信息,怎么配置xml?(我只要列表中的主要信息,没必要进入页面的的具体信息)

@自风 你好,想跟你请教个问题: spiderman想抓取分页页面列表的信息,而不是进入每个列表后页面的具体信息,怎么配置xml?(我只要列表中的主要信息...

2015/06/06 14:23

没有更多内容

加载失败,请刷新页面

Spiderman Java开源垂直爬虫抓取示例【需求小复杂】

首先要说明的是,本文仅介绍了Spiderman解析 XML 的示例,Spiderman解析 HTML 也是差不多的原理,不过更考验“爬虫”的能力。 这个以后再发篇文章详细说明 【 已经有了请点击这里】:) 在Git...

2013/01/04 19:25
8.9K
1
【最新更新支持频道分页、文章分页】【抛砖引玉】抓取OSC的问答数据展现垂直爬虫的能力

更新提示(2013-03-13):最新版本更新: 支持定向抓取某频道 <!-- | name:目标名称 --> <target name="travel" isForceUseXmlParser="1"> <!-- | 限制目标URL的来源为网易旅游子...

2013/01/08 18:11
37.7K
24
给webmagic加上了注解支持

今天有个网友在博客回帖,能不能用注解来写一个爬虫?想了想,因为Javaer总习惯结果有个对象Model(我在自己用的时候也是这样),ResultItems的key-value形式难免会有点麻烦,何不将抽取和Mod...

2013/08/01 22:58
1K
0
3D视频的质量评价报告 (MSU出品)

俄罗斯的MSU Graphics & Media Lab (Video Group)出品的3D视频的质量评价报告。测试了一些3D视频的质量,其测试方法值得我们参考。在此翻译一下部分文字。 注:这是其第4个3D视频的质量评价报...

2014/08/16 13:47
13
0
83款 网络爬虫开源软件

1、http://www.oschina.net/project/tag/64/spider?lang=0&os=0&sort=view& 搜索引擎 Nutch Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文...

2014/08/07 13:40
93
0
83款 网络爬虫开源软件

1、http://www.oschina.net/project/tag/64/spider?lang=0&os=0&sort=view& 搜索引擎 Nutch Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文...

2014/08/07 13:40
44
1
83款 网络爬虫开源软件

1、http://www.oschina.net/project/tag/64/spider?lang=0&os=0&sort=view& 搜索引擎 Nutch Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文...

2014/08/07 13:40
391
0
83款 网络爬虫开源软件

1、http://www.oschina.net/project/tag/64/spider?lang=0&os=0&sort=view& 搜索引擎 Nutch Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文...

2014/08/07 13:40
248
0
44款Java 网络爬虫开源软件

极简网络爬虫组件 WebFetch WebFetch 是无依赖极简网页爬取组件,能在移动设备上运行的微型爬虫。 WebFetch 要达到的目标: 没有第三方依赖jar包 减少内存使用 提高CPU利用率 加快网络爬取速...

2018/06/04 14:36
92
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部