Electron 打造定向爬虫

效果演示

视频演示请点这里:https://weibo.com/tv/v/GzN4WwiHZ?fid=1034:4285301292740234

简介

当初,github 为了打造自家的 Atom 编辑器开发了 Electron,后来开源出来了。

Electron 由 3 大块构成:

  • Chromium 浏览器内核
  • NodeJS 相关的接口
  • 平台相关的底层接口

Electron 的目标是:用 WEB 技术来开发跨平台的应用。从实际效果来看,Electron 发展得相当好,开发出来的应用在 Windows、Linux、MAC 上面都能很好地运行,无需开发多套代码。

目前,很多大厂都在使用 Electron,例如:微软发布的前端开发神器 VSCode、github 自己的 Atom 编辑器,还有 Skype、Slack 等。

koa 是一款基于 NodeJS 的 Server 端开发框架,由 express 框架的原班人马打造,目前最新的版本是 koa 2.x。目前,koa 的社区活跃度非常高,阿里的 egg.js 就是基于 koa 开发的。

本教程将会带领你使用 Electron+MySQL 打造一款定向爬虫,以 QQ 空间作为练习目标;同时使用 koa2+ejs+Echarts 开发一个监控界面,用来实时监控爬虫的运行状态。

学习目标

通过本教程的学习,您将学会:

  • Electron 打造定向爬虫
  • mysqljs 操作数据库
  • log4js 记录前端日志
  • koa+ES6 开发服务端应用
  • 用 Echarts 展示数据
  • Connection Rank 的概念和计算方式
  • 网络爬虫的基本调度流程

内容结构

内容整体上分成两大章:

  • 第 1 章是“使用篇”,共 3 个小节,描述整体运行效果和 Electron 爬虫的使用方法。这部分不涉及过多的技术细节,所有人都能看得懂。
  • 第 2 章是“技术篇”,共 16 个小节,详细解释整个系统的设计思路和核心代码。

1.1 基础知识:通用爬虫和定向爬虫的基本概念

1.2 整体效果演示:Electron 爬虫的整体效果演示

1.3 在你本地运行起来

2.1 MySQL 数据库设计

  • 2.1.1 Connection Rank
  • 2.1.2 MySQL 数据库设计
  • 2.1.3 用 mysqljs 操作数据库
  • 2.1.4 用 log4js 记录日志

2.2 用 Electron 开发定向爬虫

  • 2.2.1 Electron 快速上手
  • 2.2.2 webview 的基本用法
  • 2.2.3 进程间通讯 IPC
  • 2.2.4 爬虫核心代码解析

2.3 用 koa2 开发监控界面

  • 2.3.1 koa2 简介
  • 2.3.2 koa2 快速上手
  • 2.3.3 koa-generator 快速生成目录结构
  • 2.3.4 koa-ejs 模板引擎快速上手
  • 2.3.5 koa-static 处理静态资源
  • 2.3.6 koa-router 处理路由
  • 2.3.7 nodemon 监控代码变化并自动重启
  • 2.3.8 监控界面核心代码解析

适宜人群

  • “大前端”方向的中高级开发者
  • 偏好 Node 全栈的开发者
  • 对定向爬虫感兴趣的开发者
  • 对 electron、koa 相关技术感兴趣的开发者

注意事项

  • 本教程所描述的思路和技术方案仅供学习研究,涉及到的技术和接口都是公开的内容。代码仅供示意,其本身不是商品的一部分,不提供任何定制服务或长期维护承诺。
  • 本教程可能涉及到的视频、图文等都不提供下载,敬请谅解。
  • 私自把内容传播给未付费用户是盗版行为,包括:代码、图文、视频等相关内容,群主有权踢您出群,如有异议可到平台进行申诉。
  • 如果由于不可抗因素,例如:战争、火灾、国家政策法规变化等,导致无法继续为您提供服务,内容提供者不承担责任。
  • 服务类和虚拟类物品购买之后不接受退款要求。
  • 付费入群表示您已经仔细阅读并同意以上所有约定,请谨慎购买。

下载工具平台