ScriptSpider: 一个分布式的简单易用的 Java 爬虫框架

2017-04-14 08:59:20 +08:00
 xjtushilei

ScriptSpider

ScriptSpider (以下简称 SS ),做一个好用的爬虫框架。

目前的功能已经够大多数情况下使用, ScriptSpider 会朝着易用、高度、最新技术的方向发展!

欢迎 StarFork 我的项目!算是给点鼓励也好(嘿嘿)

特点

安装

使用 maven

<dependency>
    <groupId>com.github.xjtushilei</groupId>
    <artifactId>scriptspider</artifactId>
    <version>0.2</version>
    <!--请尽量使用最新版本-->
</dependency>

关于版本

请尽量使用最新版本,http://search.maven.org,中央仓库搜索最新版本

因为文档都是根据最新版本来及时更新的。

离线使用 jar 包

在项目主页的 releases 目录

在最新的 release 下面,下载相应的所有的依赖包集合 zip :dependency.zip

打开自己的工程,导入即可!

如何开始

在开始之前,你应该先了解该框架是如何工作的。

流程图

基本上,你只需要提供“解析器”,“下载器”两个模块就好啦。

因为 SS 也不知道您想要哪一部分内容,不知道您想存到哪里~

如果您对上图很了解,那么可以直接开始编程了。或者您可以先看一下下面的简单用法介绍。

src/main/java/com/github/xjtushilei/example中可以查看所有的样例程序

最小 Spider

    //爬取《交大新闻网》开始的所有页面信息,并将信息打印到控制台!

    Spider.build().addUrlSeed("http://news.xjtu.edu.cn").run();

一句话,就能实现一个爬虫!

因为,我们给您默认提供了好多组件。

最小多线程 Spider

    //爬取《交大新闻网》开始的所有页面信息,并将信息打印到控制台!
    Spider.build()
          .thread(10)   //设置多少个线程
          .addUrlSeed("http://news.xjtu.edu.cn")
          .run();

如果您没有设置 thread 选项,默认是 5 个线程

当然了,您可以使用.thread(1)来使用单线程。虽然我们不建议您这么做。

甚至您可以使用.thread(-100)来启动线程(呵呵,默认是 5 )

正常的机器,我们推荐您使用 10 个以上的线程进行尝试!

更多的示范

请移步How to Start

感受

  1. 设计一个框架需要考虑的东西需要很多,自己能力有限,第一次设计,不妥之处欢迎大家提 issue 。
  2. 开源项目,需要花费很多的精力,自己有时候也挺疯狂的,各种折腾。回首一看,还是挺开心的。
  3. 如果你有兴趣,可以加入 ScriptSpider ,我们一起构建更美好的 JAVA 爬虫框架!

背景

因背景有失大雅,故放在后面。

无意之中看到了一个软件设计大赛,看到一个题目有兴趣,结果工作人员迟迟不给示例文件密码,破解失败,无奈就随手选了个题目,那就爬虫吧。

欢迎加入我们

虽然现在只有一个人。

联系个人主页的邮箱、 QQ 等即可。

3109 次点击
所在节点    Java
10 条回复
Caratpine
2017-04-14 09:08:55 +08:00
支持👍🏻
sunzhenyucn
2017-04-14 09:27:17 +08:00
Mark 一下
xjtushilei
2017-04-14 09:39:38 +08:00
@Caratpine 谢谢
6IbA2bj5ip3tK49j
2017-04-14 11:40:01 +08:00
和 webmagic 相比有什么亮点吗?
xjtushilei
2017-04-17 15:16:36 +08:00
@xgfan 谢谢您的问题。您提了之后我去看了一下 webmagic ,后来发现,其实我的这个好像并没有特别大的优势,好像都差不多。从代码,文档,设计思路等等来说,都还差点。之后我会再持续关注一下。
wellhome
2017-04-19 22:49:54 +08:00
支持楼主
herozzm
2017-04-30 11:40:24 +08:00
解析器最好支持正则,json,css 选择器
herozzm
2017-04-30 11:41:01 +08:00
还有 xpath
wk999
2017-06-08 22:11:12 +08:00
跟 webmagic 好像。。。
rekulas
2017-06-26 21:50:48 +08:00
已 star,试用了不少大牛们推荐的爬虫,都或多或少有些问题,没想到作者的小爬虫给我带来了惊喜

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/354758

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX