网络爬虫常用的技术(Java)
- 底层实现Jsoup+HttpClient
- 开源框架Webmagic
Webmagic是一个开源的爬虫框架,用于简化爬虫的开发流程,使开发者更专注与业务逻辑的开发.
主要特色:
完全模块化的设计,强大的扩展性.
核心简单但是涵盖爬虫的全部流程,灵活而强大
提供丰富的抽取页面API
无配置,但是可通过POJO+注解形式实现一个爬虫
支持多线程
支持分布式
支持爬虫js动态渲染页面
无框架依赖,可以灵活的嵌入到项目中
架构解析
WebMagic的结构分为Downloader、PageProcessor、Scheduler、Pipeline四大组
件,并由Spider将它们彼此组织起来。这四大组件对应爬虫生命周期中的下载、处理、管
理和持久化等功能。而Spider则将这几个组件组织起来,让它们可以互相交互,流程化的
执行,可以认为Spider是一个大的容器,它也是WebMagic逻辑的核心。
四大组件
Downloader
Downloader负责从互联网上下载页面,以便后续处理。WebMagic默认使用了