天天看点

推荐Github上9个热门开源Java爬虫项目 值得收藏

作者:老K玩代码

今天老K要推荐几个Github上的热门Java爬虫项目。

内容较多,建议收藏,方便以后随时查看。

推荐Github上9个热门开源Java爬虫项目 值得收藏

1. crawler4j

  • url: https://github.com/yasserg/crawler4j
  • star: 4.3k
  • fork: 1.9k
  • watch: 312

crawler4j是一个通过建议接口实现的开源网络爬虫,可以帮助你在很短的时间内实现一个多线程的网络爬虫。

2. WebCollector

  • url: https://github.com/CrawlScript/WebCollector
  • star: 2.9k
  • fork: 1.5k
  • watch: 333

WebCollector无需配置,便于二次开发JAVA爬虫框架(内核),提供简化API,实现强大的爬虫只需要少量代码。WebCollector-Hadoop是WebCollector的Hadoop支持分布式爬行的版本。

3. nutch

  • url: https://github.com/apache/nutch
  • star: 2.5k
  • fork: 1.2k
  • watch: 240

这是一个由apache提供支持的网络爬虫项目,具备高扩展性和适应性的开源项目。

推荐Github上9个热门开源Java爬虫项目 值得收藏

4. Gecco

  • url: https://github.com/xtuhcy/gecco
  • star: 2.4k
  • fork: 888
  • watch: 143

Gecco是一款基于java语言的轻量化易用的网络爬虫。整合了jsoup、httpclient、fastjson、spring、htmlunit、redission等多个框架,只需配置一些jquery风格选择器,可以快速写出爬虫。Gecco框架具有优异的可扩展性,框架设计基于开关原则,对扩展开放。

5. Movie_Recommend

  • url: https://github.com/LuckyZXL2016/Movie_Recommend
  • star: 2.3k
  • fork: 996
  • watch: 105

这是一个基于spark的电影推荐系统,通过大数据过滤引擎实现了电影推荐功能,包含了爬虫、网站前后端,管理后台以及推荐系统。

6. Heritrix

  • url: https://github.com/internetarchive/heritrix3
  • star: 2.3k
  • fork: 729
  • watch: 183

Heritrix是一个开源可扩展的网络爬虫项目。这个项目尊重robots.txt的排除规则,基于礼貌的拜访策略实现爬虫。

推荐Github上9个热门开源Java爬虫项目 值得收藏

7. XueQiuSuperSpider

  • url: https://github.com/decaywood/XueQiuSuperSpider
  • star: 1.9k
  • fork: 764
  • watch: 161

雪球超级爬虫是基于雪球网、东方财富和同花顺实现的股票数据爬虫程序。通过它你可以根据个人操作风格重新定义各个股票的筛选方式。本项目高扩展,可以实现任何股票数据的搜集和分析,对于炒股的小伙伴,可以尝试了解一下。

8. SeimiCrawler

  • url: https://github.com/zhegexiaohuozi/SeimiCrawler
  • star: 1.9k
  • fork: 618
  • watch: 173

这是一个简单、敏捷、分布式的爬虫架构,支持SpringBoot的Java爬虫框架。通过SeimiCrawler,你只需要专注于爬虫的业务逻辑即可,大大提高了开发爬虫系统的开发效率。

示例代码如下:

@Crawler(name = "basic")
public class Basic extends BaseSeimiCrawler {
    @Override
    public String[] startUrls() {
        return new String[]{"http://www.cnblogs.com/"};
    }
     @Override
     public void start(Response response) {
         JXDocument doc = response.document();
         try {
             List<Object> urls = doc.sel("//a[@class='titlelnk']/@href");
             logger.info("{}", urls.size());
             for (Object s:urls){
                 push(Request.build(s.toString(),Basic::getTitle));
             }
         } catch (Exception e) {
             e.printStackTrace();
         }
     }
     public void getTitle(Response response){
         JXDocument doc = response.document();
         try {
             logger.info("url:{} {}", response.getUrl(), doc.sel("//h1[@class='postTitle']/a/text()|//a[@id='cb_post_title_url']/text()"));
             //do something
         } catch (Exception e) {
             e.printStackTrace();
         }
     }
}           
推荐Github上9个热门开源Java爬虫项目 值得收藏

9. Flesh

  • url: https://github.com/Kerr1Gan/Flesh
  • star: 396
  • fork: 81
  • watch: 23

如果你是一位想学习一下 Kotlin 的同学,那么 Flesh 是一个适合学习、练手、入门的项目。从中可以学到 Java 与 Kotlin 间的相互调用、爬虫操作。这是个诚意(福利)满满的项目,快去下载、加入到这个项目中吧。

上述的项目希望对你有所帮助。

码字不易,记得也要点赞哦!

推荐Github上9个热门开源Java爬虫项目 值得收藏

​我之前还分享过一些Github上热门项目,有需要的同学可以直接点击下方链接获取:

推荐阅读

推荐GitHub上8个有意思的项目 包含Python JS等不同语言 建议收藏

GitHub上11个好玩又有挑战的前端项目 Star过万 值得收藏

结束语

我是@老K玩代码,专注于编程开发的经验总结和项目分享。

推荐Github上9个热门开源Java爬虫项目 值得收藏

#头条创作挑战赛#

继续阅读