Node.js爬取豆瓣数据实例分析


Posted in Javascript onMarch 05, 2018

一直自以为自己vue还可以,一直自以为webpack还可以,今天在慕课逛node的时候,才发现,自己还差的很远。众所周知,vue-cli基于webpack,而webpack基于node,对node不了解,谈什么了解webpack。所以就自己给自己出了一道题,爬取豆瓣数据,目前还处于初级阶段。今天就浅谈爬取到豆瓣的数据,再另一个页面用自己的方式展现,后续会跟进。

1、需要解决的问题

  1. 搭建服务
  2. 怎么处理爬到的数据
  3. 怎么自动打开默认浏览器

2、搭建服务

搭建服务有好几种方式,一开始我用的http,但是http有个弊端就是不能解析https协议的url,所以就用了express,解析https协议的网址我用了request包,豆瓣的网址是https的,

今天爬取的是https://movie.douban.com/chart这个网址;如下图,我要获取的有三个部分,图片、电影名字、电影链接.

Node.js爬取豆瓣数据实例分析

Node.js爬取豆瓣数据实例分析

3、怎么处理爬到的数据

我们用request爬到的数据,怎么处理呢?cheerio包可以让我们像Jq那样处理爬到的html数据。

①、首先解析数据,取到爬取网页的html数据;

Node.js爬取豆瓣数据实例分析

②、然后利用cheerio包操作爬到的数据,取到你想要的数据。

Node.js爬取豆瓣数据实例分析

③、取到数据,创建html,输出到页面。如下图,我用的字符串拼接,办法有点笨,还没有找到更好的办法。

Node.js爬取豆瓣数据实例分析

4、怎么自动打开默认浏览器

不知道你有没有看vue-cli中webpack的配置,自动打开浏览器,vue-cli用的opn包.

Node.js爬取豆瓣数据实例分析

这个包用起来很方便,引入包,直接调用opn(url)即可;

5、展示

Node.js爬取豆瓣数据实例分析

Node.js爬取豆瓣数据实例分析

Javascript 相关文章推荐
js阻止冒泡及jquery阻止事件冒泡示例介绍
Nov 19 Javascript
jquery插件NProgress.js制作网页加载进度条
Jun 05 Javascript
javascript中new关键字详解
Dec 14 Javascript
jQuery操作属性和样式详解
Apr 13 Javascript
任意Json转成无序列表的方法示例
Dec 09 Javascript
彻底学会Angular.js中的transclusion
Mar 12 Javascript
Three.js获取鼠标点击的三维坐标示例代码
Mar 24 Javascript
详细AngularJs4的图片剪裁组件的实例
Jul 12 Javascript
使用xampp将angular项目运行在web服务器的教程
Sep 16 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
Nov 13 Javascript
webpack proxy 使用(代理的使用)
Jan 10 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
Apr 30 jQuery
基于Vue渲染与插件的加载顺序的问题详解
Mar 05 #Javascript
AjaxUpLoad.js实现文件上传
Mar 05 #Javascript
JsChart组件使用详解
Mar 04 #Javascript
ionic2中使用自动生成器的方法
Mar 04 #Javascript
Vue.directive()的用法和实例详解
Mar 04 #Javascript
Vue.directive 自定义指令的问题小结
Mar 04 #Javascript
JavaScript图片处理与合成总结
Mar 04 #Javascript
You might like
PHP 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
PHP使用in_array函数检查数组中是否存在某个值
2015/03/25 PHP
Laravel5.7框架安装与使用学习笔记图文详解
2019/04/02 PHP
类之Prototype.js学习
2007/06/13 Javascript
JavaScript高级程序设计 读书笔记之八 Function类及闭包
2012/02/27 Javascript
js前台分页显示后端JAVA数据响应
2013/03/18 Javascript
javascript中文本框中输入法切换的问题
2013/12/10 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
2014/11/04 Javascript
js去除浏览器默认底图的方法
2015/06/08 Javascript
javascript Slip.js实现整屏滑动的手机网页
2015/11/25 Javascript
javascript执行环境及作用域详解
2016/05/05 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
React-Native左右联动List的示例代码
2017/09/21 Javascript
微信小程序中使用ECharts 异步加载数据实现图表功能
2018/07/13 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
详解Node.js异步处理的各种写法
2019/06/09 Javascript
jQuery 图片查看器插件 Viewer.js用法简单示例
2020/04/04 jQuery
jQuery实现倒计时功能完整示例
2020/06/01 jQuery
VueX模块的具体使用(小白教程)
2020/06/05 Javascript
微信小程序实现聊天室
2020/08/21 Javascript
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
2013/12/08 Python
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
python 通过logging写入日志到文件和控制台的实例
2018/04/28 Python
Python当中的array数组对象实例详解
2019/06/12 Python
python 队列基本定义与使用方法【初始化、赋值、判断等】
2019/10/24 Python
旧时光糖果:Old Time Candy
2018/02/05 全球购物
世界上第一个创建了罩杯系统的美国内衣品牌:Maidenform
2019/03/23 全球购物
保时捷设计:Porsche Design
2019/03/30 全球购物
SQL面试题
2013/12/09 面试题
销售岗位职责范本
2014/06/12 职场文书
学生安全责任书模板
2014/07/25 职场文书
2014红色之旅心得体会
2014/10/07 职场文书
2014年关工委工作总结
2014/11/17 职场文书
2015建军节87周年演讲稿
2015/03/19 职场文书
2016年春节慰问信息
2015/03/25 职场文书
60句有关成长的名言
2019/09/04 职场文书