加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
README.md~ 2.11 KB
一键复制 编辑 原始数据 按行查看 历史
gavin 提交于 2015-07-23 22:43 . set README
# GSpider
**GSpider**是一款java垂直爬虫,使用非常简单。以下是介绍:
- **爬取网页** :采用*Jsoup*爬取网页;
- **设置任务** :新建java类继承*iTask*接口即可;
- **配置选项** :可配置线程数;
----------
[TOC]
## 使用方法
### 简单参考
接下来以爬取*知乎* 为例,没有配置爬取任务,默认获取网页的*title*
init方法后,在Console中可以输入start命令开始爬取。爬取过程中可以输入look命令查看当前线程的一些情况。 同样,也可以输入add命令添加爬取源。最后如果想停止爬虫则可以输入stop命令停止爬取。
#### 代码
``` java
GSpider nst = new GSpider();
Pattern p = Pattern.compile("http://www.zhihu.com/question/[0-9]+");
nst.setRegex(p);
nst.addWebUrl("http://www.zhihu.com/explore");
nst.init();
nst.check();
nst.initControl();
```
### 复杂参考
接下来继续以以爬取*知乎* 为例。
新建一个Zhihu类,继承iTask接口。在dispose方法中对Document对象html进行一些操作。
main方法中开启爬虫。
#### 代码
``` java
package GSpider.examples;
import java.util.regex.Pattern;
import org.apache.log4j.Logger;
import org.jsoup.nodes.Document;
import GSpider.GSpider;
import GSpider.core.iTask;
public class Zhihu implements iFindDestination{
public Logger log = Logger.getLogger(this.getClass());
public Zhihu() {
log.warn("hello zhihu");
}
@Override
public void dispose(Document html,String webUrl) {
System.out.println(html.title());
}
public static void main(String[] args) {
new GSpider().setTaskExecutorNum(5).setRegex(Pattern.compile("http://www.zhihu.com/question/[0-9]+")).addWebUrl("http://www.zhihu.com/explore").init().check().initControl();
}
}
```
## 关于
**GSpdier** 参考了网上一些大牛的思想,本人是一名学生,感谢那些网上的布道者,这是一个最初的版本,以后会跟进。
## 反馈与建议
- 微博:[@gavin要加油](http://weibo.com/wildfireg13)
- 邮箱:<zhang159916@gmail.com>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化