- 1. WebMagic 概览
- 1.1 设计思想
- 1.2 总体架构
- 1.3 项目组成
- 2. 快速开始
- 2.1 使用Maven
- 2.2 不使用Maven
- 2.3 第一个爬虫项目
- 3. 下载和编译源码
- 3.1 下载源码
- 3.2 导入项目
- 3.3 编译和执行源码
- 4. 编写基本的爬虫
- 4.1 实现 PageProcessor
- 4.2 使用 Selectable 抽取元素
- 4.3 使用Pipeline保存结果
- 4.4 爬虫的配置、启动和终止
- 4.5 Jsoup与Xsoup
- 4.6 爬虫的监控
- 4.7 配置代理
- 4.8 处理非 HTTP GET 请求
- 5. 使用注解编写爬虫
- 5.1 编写Model类
- 5.2 TargetUrl与HelpUrl
- 5.3 使用ExtractBy进行抽取
- 5.4 在类上使用ExtractBy
- 5.5 结果的类型转换
- 5.6 一个完整的流程
- 5.7 AfterExtractor
- 6. 组件的使用和定制
- 6.1 使用和定制 Pipeline
- 6.2 使用和定制 Scheduler
- 6.3 使用和定制 Downloader
- 附录:实例分析
- 列表 + 详情的基本页面组合
- 抓取前端渲染的页面
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
1.1 设计思想
1. 一个框架,一个领域
一个好的框架必然凝聚了领域知识。WebMagic 的设计参考了业界最优秀的爬虫 Scrapy,而实现则应用了 HttpClient、Jsoup 等 Java 世界最成熟的工具,目标就是做一个 Java 语言 Web 爬虫的教科书般的实现。
如果你是爬虫开发老手,那么 WebMagic 会非常容易上手,它几乎使用 Java 原生的开发方式,只不过提供了一些模块化的约束,封装一些繁琐的操作,并且提供了一些便捷的功能。
如果你是爬虫开发新手,那么使用并了解 WebMagic 会让你了解爬虫开发的常用模式、工具链、以及一些问题的处理方式。熟练使用之后,相信自己从头开发一个爬虫也不是什么难事。
因为这个目标,WebMagic 的核心非常简单——在这里,功能性是要给简单性让步的。
2. 微内核和高可扩展性
WebMagic 由四个组件(Downloader、PageProcessor、Scheduler、Pipeline) 构成,核心代码非常简单,主要是将这些组件结合并完成多线程的任务。这意味着,在 WebMagic 中,你基本上可以对爬虫的功能做任何定制。
WebMagic 的核心在 webmagic-core 包中,其他的包你可以理解为对 WebMagic 的一个扩展——这和作为用户编写一个扩展是没有什么区别的。
3. 注重实用性
虽然核心需要足够简单,但是 WebMagic 也以扩展的方式,实现了很多可以帮助开发的便捷功能。例如基于注解模式的爬虫开发,以及扩展了 XPath 语法的 Xsoup 等。这些功能在 WebMagic 中是可选的,它们的开发目标,就是让使用者开发爬虫尽可能的简单,尽可能的易维护。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论