位置: 编程技术 - 正文
推荐整理分享基于node.js制作简单爬虫教程(node. js教程),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:node.js视频教程,node怎么做,node.js视频教程,node.js怎么用,node怎么做,node.js怎么用,node.js怎么用,node怎么做,内容如对您有帮助,希望把文章链接给更多的朋友!
前言:最近想学习node.js,突然在网上看到基于node的爬虫制作教程,所以简单学习了一下,把这篇文章分享给同样初学node.js的朋友。
目标:爬取 网站的所有门店发型师的基本信息。
思路:访问上述网站,通过chrome浏览器的network对网页内容分析,找到获取各个门店发型师的接口,对参数及返回数据进行分析,遍历所有门店的所有发型师,直到遍历完毕,同事将信息存储到本地。
步骤一:安装node.js
下载并安装node,此步骤比较简单就不详细解释了,有问题的可以直接问一下度娘。
步骤二:建立工程
1)打开dos命令条,cd进入想要创建项目的路径(我将此项目直接放在了E盘,以下皆以此路径为例);
2)mkdir node (创建一个文件夹用来存放项目,我这里取名为node);
3)cd 进入名为node的文件夹,并执行npm init初始化工程(期间会让填写一些信息,我是直接回车的);
步骤三:创建爬取到的数据存放的文件夹
1)创建data文件夹用来存放发型师基本信息;
2)创建image文件夹用来存储发型师头像图片;
此时工程下文件如下:
步骤四:安装第三方依赖包(fs是内置模块,不需要单独安装)
1)npm install cheerio ?save
2)npm install superagent ?save
3)npm install async ?save
4)npm install request ?save
分别简单解释一下上面安装的依赖包:
cheerio:是nodejs的抓取页面模块,为服务器特别定制的,快速、灵活、实施的jQuery核心实现,则能够对请求结果进行解析,解析方式和jQuery的解析方式几乎完全相同;
superagent:能够实现主动发起get/post/delete等请求;
async:async模块是为了解决嵌套金字塔,和异步流程控制而生,由于nodejs是异步编程模型,有一些在同步编程中很容易做到的事情,现在却变得很麻烦。Async的流程控制就是为了简化这些操作;
request:有了这个模块,http请求变的超简单,Request使用简单,同时支持https和重定向;
步骤五:编写爬虫程序代码
打开hz.js,编写代码:
步骤六:运行爬虫程序
输入node hz.js命令运行爬虫程序,效果图如下:
运行成功后,发型师基本信息以html文件的形式存储在data文件夹中,发型师头像图片存储在image文件夹下:
后记:到此一款基于node.js制作的简单爬虫就大功告成了,由于我也是初学者,好多地方也不是很理解,但好在是自己完成了,不足之处敬请谅解。
代码下载地址:
十大 Node.js 的 Web 框架(快速提升工作效率) Node.js系统含有多种不同的结构,如MVC、全栈、RESTAPI和生成器等。这些结构不仅提升了Web应用的开发效率,也优化了开发过程。在这里,我们收集整理了
NodeJS实现图片上传代码(Express) 文件上传是每个网站不可避免的,最近需要做些上传图片的功能,主要解决两个问题,一个是文件上传样式和服务端路径保存,功能很简单,做起来倒
node.js + socket.io 实现点对点随机匹配聊天 真心佩服那些可以经常发布笔记的人,其实我也想经常发来的,奈何技术不够加上懒,要向大神们多多学习了,前段时间有用bomb平台自带的socket写一个
标签: node. js教程
本文链接地址:https://www.jiuchutong.com/biancheng/382124.html 转载请保留说明!上一篇:详解如何使用Node.js编写命令工具——以vue-cli为例(noodoe如何使用)
下一篇:十大 Node.js 的 Web 框架(快速提升工作效率)(node.js权威指南)
友情链接: 武汉网站建设