Egg JavaJava 网络爬虫

联合创作 · 2023-09-29 13:29

Egg 简介

Egg

它一个通用高效的爬虫,希望它能够替大家实现一些需求,更希望能为开源做出自己的贡献。目前,还在成长,在我的构想下,它还需要添加很多功能,我会继续完善。有任何疑问以及需求请以与作者交流:630841816@qq.com

  • Egg是一个通用,多线程的Java爬虫框架。

  • Egg简单小巧,api非常简单,容易上手。

  • Egg性能不错,并实现多种请求方式。

  • 能够比较快的响应使用者的需求

速度说明

实测数据,在20M无线网下(隔了堵墙,所以会不稳定)

1. 爬取1000网页,重复爬取十次
  • 8线程,耗时平均在15秒左右

  • 16线程,平均耗时12秒左右

  • 32线程,平均耗时12秒左右

速度大概在1.7-2.5m/s左右

功能介绍

1.可以通过各种方式爬取网页,当然有些并不完善,在目前主要实现get,post,其余会继续开发

2.可以从网页中提取出主体内容

3.其余在仍在开发....

开发说明

作者非常希望能通过自己的努力,可以推动一点开源事业的发展,很希望可以为开源做出自己的一份贡献,更希望能够在一个深入发掘。Egg虽然还有很多不如人意的地方,但是作为在校大学生,会为大家及时解决并更新代码。遇到有需要的需求,可以及时添加功能,和大家广泛交流。作为开发者,在开发出简单易懂,容易使用的软件做着努力,所以,初学者我认为也应该很容易可以从它里面获取自己想要的。大家可以阅读源码,熟悉代码流程,和相关包的使用。

希望

作为开发者当然希望越来越多的人使用它。并且可以为它提出你宝贵的意见和建议。

协议

遵循Apache 2.0协议

贡献者

向下面提交过代码的同学表示感谢(哈哈,就我啦)

邮件交流

王捉熊630841816@qq.com

0.3.00版本更新说明

相对于以前的api,这个版本更加易用,功能也愈加完善,配置更加简单

  • 与之前的版本添加dataprocesspor包,用来处理Page 中的result

  • 新添model包,系统中数据传输的model

    • BaseModel任何model都可以继承它,它封装了model的共有操作

    • 新添Site,用于配置爬虫爬取的站点信息,有了更加丰富的配置,类似于headers,cookie,等等

  • net包修改

    • 添加FactoryMonitor 虚拟类,用来监控factory长生多少request

    • 新添page 用来保存抓取后的数据

    • RequestFactory用来产生request

  • 新添parse包,用来解析抓取数据

    • Parser是一个解析器,用来方便用户提取抓取数据中自己需要的东西

    • Handler是一个处理器,用来处理每次抓取之后的操作

    • Selector是一个选择器,用来判断是否是我们所需要的内容

浏览 7
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报