博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nodejs + koa2 实现爬虫
阅读量:6799 次
发布时间:2019-06-26

本文共 1091 字,大约阅读时间需要 3 分钟。

安装koa脚手架

注意koa2只支持node版本 v7+,请确保版本足够

npm i koa-generator -g  //安装全部脚手架koa2 projectName //初始化项目目录cd projectNamenpm i //默认携带package.json文件,需要我们自行安装node_modules包npm start  //启动项目(默认是3000端口号)

需要注意的是,每次执行npm start命令, koa2默认会帮助我们执行一次入口文件,如果需要动态监测文件改变,开发环境建议使用nodemon进行实时监测刷新. (npm i nodemon -g), 这里需要更改 package.json文件中的 script属性,改为"scripts": { "start": "nodemon bin/www"} 即可,

superagent请求数据

用法如下:

npm i superagent -S    superagent        .get(url)         .set({  //设置请求头            "Connection":"keep-alive",        })        .end((err,res) => {   //错误优先            if(err){                console.log(err);                return ;            }            ctx.body = res.text  // 请求到的html在text属性中        }

cheerio使用

文档可以参考 或者

cheerio是为没有window对象的运行环境专门定制的DOM操作库. 是jquery的核心实现.(并不是基于window对象的)

const cheerio = require('cheerio');//superagent请求到数据之后, 执行const $ = cheerio.load(res.text);...

常用Api :

addClass(className) : 给标签添加class名,方便抓取数据
text() : 获取标签的文本内容
find('img') : 查找某类型的标签或者class
toArray : 可以把一个伪数组变成数组
each : 循环遍历得到的数组,参数分别是(index,element);

具体实现以及cheerio使用,可以参考. 如果你觉得源代码对你有帮助的话,记得点个Star噢~

转载地址:http://liywl.baihongyu.com/

你可能感兴趣的文章
TP v5中Request取值方式变化
查看>>
日志分析系统——Hangout源码学习
查看>>
第 4 章 Windows Server
查看>>
网站平台架构演变史(三) - 数据库表的查询优化
查看>>
5.9. sort - sort lines of text files
查看>>
深入理解line-height与vertical-align(1)
查看>>
到目前为止给DataGrid添加Number列最简单方法
查看>>
《快学Scala》第六章 对象 第七章 包和引入
查看>>
RabbitMQ学习系列(二): RabbitMQ安装与配置
查看>>
php将对象数组转成普通数组
查看>>
unity htc vive使用
查看>>
★商场上的十则寓言故事!
查看>>
如何将北京时间批量转为Unix时间?用Excel!
查看>>
代码备份:处理 SUN397 的代码,将其分为 80% 训练数据 以及 20% 的测试数据...
查看>>
如何利用phpize在生产环境中为php添加新的扩展php-bcmath
查看>>
学习show_space存储过程
查看>>
五险一金
查看>>
一个小时学会Oracle数据库
查看>>
换芯后的 Edge 浏览器 UI 首曝光,还是熟悉的味道?
查看>>
JavaScript深入之类数组对象与arguments
查看>>