A Java componentized distributed crawler framework. 一个Java版本的组件化的分布式通用爬虫
ScriptSpider(以下简称SS),做一个好用的爬虫框架。
目前的功能已经够大多数情况下使用,ScriptSpider会朝着易用、高度、最新技术的方向发展!
欢迎 Star 和 Fork 我的项目!
近12个月maven中央仓库使用情况。
<dependency>
<groupId>com.github.xjtushilei</groupId>
<artifactId>scriptspider</artifactId>
<version>0.3</version>
<!--请尽量使用最新版本. update time:2018年3月29日18:37:44-->
</dependency>
关于版本
请尽量使用最新版本,http://search.maven.org,中央仓库搜索最新版本
因为文档都是根据最新版本来及时更新的。
在项目主页的 releases目录
在最新的release下面,下载相应的所有的依赖包集合zip:dependency.zip
。
打开自己的工程,导入即可!
在开始之前,你应该先了解该框架是如何工作的。
基本上,你只需要提供“解析器”,“下载器”两个模块就好啦。
因为SS也不知道您想要哪一部分内容,不知道您想存到哪里~
如果您对上图很了解,那么可以直接开始编程了。或者您可以先看一下下面的简单用法介绍。
在src/main/java/com/github/xjtushilei/example中可以查看所有的样例程序
//爬取《交大新闻网》开始的所有页面信息,并将信息打印到控制台!
Spider.build().addUrlSeed("http://news.xjtu.edu.cn").run();
一句话,就能实现一个爬虫!
因为,我们给您默认提供了好多组件。
//爬取《交大新闻网》开始的所有页面信息,并将信息打印到控制台!
Spider.build()
.thread(10) //设置多少个线程
.addUrlSeed("http://news.xjtu.edu.cn")
.run();
如果您没有设置thread选项,默认是5个线程
当然了,您可以使用.thread(1)
来使用单线程。虽然我们不建议您这么做。
甚至您可以使用.thread(-100)
来启动线程(呵呵,默认是5)
正常的机器,我们推荐您使用10个以上的线程进行尝试!
请移步How to Start
因背景有失大雅,故放在后面。
无意之中看到了一个软件设计大赛,看到一个题目有兴趣,结果工作人员迟迟不给示例文件密码,破解失败,无奈就随手选了个题目,那就爬虫吧。
联系个人主页的邮箱、QQ等即可。