文章目录webporterJava 爬虫的实操样本1、这玩意儿是干嘛的2、为什么要用它3、仓库结构4、跑起来需要什么5、怎么用6、适合谁webporterJava 爬虫的实操样本webporter 在 GitHub 上拿到 2.7K Star 了。作者基于 webmagic 爬虫框架封装了一套完整流程数据爬取、持久化、可视化展示一条龙。仓库里现成有知乎用户数据的爬虫示例跑下来能拿到 60 多万条用户数据。1、这玩意儿是干嘛的就一件事演示怎么用爬虫框架把一个完整的数据采集流程跑通。爬数据这个事Python 阵营的工具一抓一大把Java 这边相对冷清。webporter 选了国产的 webmagic 做底座把模块化设计、JSON 配置、多线程、Elasticsearch 批量导入这些环节都串起来做成一个能跑的样本工程。要注意它是样本不是框架作者自己也在 README 里强调生产环境请直接用 webmagic 或 scrapy。webporter 偏休闲性质定位是教学样例。2、为什么要用它写爬虫的人多半经历过这种节奏抓数据本身不难难的是后边那一坨。数据落盘、去重、建索引、做可视化每一步都得自己接一遍。看完教程还是不知道怎么拼起来。webporter 把这条链路完整展示了一遍。从原始 HTTP 响应到 Elasticsearch 索引再到 Kibana 的可视化图表中间每一步的代码都在仓库里。想看怎么把 60 万条用户数据导入 ES 并画个行业分布饼图这就是个现成的参考。3、仓库结构三个核心模块分工清晰webporter-core基础模块自动配置和抽象逻辑都在这里webporter-data-elasticsearch把数据灌进 ES 的工具模块webporter-collector-zhihu知乎用户爬虫的业务模块完成爬取和持久化整条链路顺着这三个模块看下来基本能摸清一个 Java 爬虫应用的骨架。4、跑起来需要什么环境清单JDK 1.8Maven 3.3Elasticsearch 5.0.1Kibana 5.0.1ES 和 Kibana 这两个版本号比较老新机器上装的话要注意兼容。作者博客里有篇 Elasticsearch 5.0 安装使用教程跟着走能省点事。5、怎么用以爬知乎用户数据为例三步走。第一步改配置文件位置在webporter-collector-zhihu/src/main/resources/config.json。只有两处要动authorization是登录知乎后浏览器抓包提取的请求头base_dir是数据落盘的根目录。第二步启动爬虫依次跑ZhihuFolloweePageProcessor和FolloweeUploader这两个类的 main 方法。前者负责下载用户信息后者把数据灌进 ES。注意这俩是串行的别同时启动。第三步可视化Kibana 里用 Visualize 拖一拖就能出图。作者博客里有篇《爬取知乎60万用户信息之后的简单分析》可以参考。6、适合谁想用 Java 做爬虫但不知道怎么搭完整流程的人在做 ES 数据导入、想找个能跑的样本对照的开发者想看 60 万量级数据怎么在 Kibana 里做聚合分析的初学者定位是教学样本不是生产工具按这个预期来看就比较合适。看 60 万量级数据怎么在 Kibana 里做聚合分析的初学者定位是教学样本不是生产工具按这个预期来看就比较合适。