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 相关文章推荐
JQuery each()函数如何优化循环DOM结构的性能
Dec 10 Javascript
javascript日期格式化示例分享
Mar 05 Javascript
浅谈javascript中字符串String与数组Array
Dec 31 Javascript
JavaScript改变CSS样式的方法汇总
May 07 Javascript
理解javascript函数式编程中的闭包(closure)
Mar 08 Javascript
Yarn的安装与使用详细介绍
Oct 25 Javascript
js获取地址栏中传递的参数(两种方法)
Feb 08 Javascript
JS实现经典的中国地区三级联动下拉菜单功能实例【测试可用】
Jun 06 Javascript
利用Webpack实现小程序多项目管理的方法
Feb 25 Javascript
vue实现一拉到底的滑动验证
Jul 25 Javascript
javascript绘制简单钟表效果
Apr 07 Javascript
微信小程序中wxs文件的一些妙用分享
Feb 18 Javascript
基于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
帅气的琦玉老师
2020/03/02 日漫
php开发工具之vs2005图解
2008/01/12 PHP
安装apache2.2.22配置php5.4(具体操作步骤)
2013/06/26 PHP
php中require和require_once的区别说明
2014/02/27 PHP
PHP5.3安装Zend Guard Loader图文教程
2014/09/29 PHP
Javascript 的addEventListener()及attachEvent()区别分析
2009/05/21 Javascript
Jquery作者John Resig自己封装的javascript 常用函数
2009/11/09 Javascript
与Math.pow 相反的函数使用介绍
2014/08/04 Javascript
javascript限制文本框输入值类型的方法
2015/05/07 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
AngularJS实现网站换肤实例
2021/02/19 Javascript
Echarts动态加载多条折线图的实现代码
2019/05/24 Javascript
VueCli3.0中集成MockApi的方法示例
2019/07/05 Javascript
vue实现随机验证码功能(完整代码)
2019/12/10 Javascript
nodejs中内置模块fs,path常见的用法说明
2020/11/07 NodeJs
Python获取当前页面内所有链接的四种方法对比分析
2017/08/19 Python
Python调用ctypes使用C函数printf的方法
2017/08/23 Python
python生成九宫格图片
2018/11/19 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
python函数不定长参数使用方法解析
2019/12/14 Python
匡威意大利官方商店 :Converse意大利
2018/11/27 全球购物
prAna官网:瑜伽、旅行和冒险服装
2019/03/10 全球购物
银行营业厅大堂经理岗位职责
2014/01/06 职场文书
电脑饰品店的创业计划书
2014/01/21 职场文书
运动会获奖感言
2014/02/11 职场文书
蟋蟀的住宅教学反思
2014/04/26 职场文书
水电站项目建议书
2014/05/12 职场文书
升学宴学生答谢词
2015/01/05 职场文书
2015年护理工作总结范文
2015/04/03 职场文书
2015年普法依法治理工作总结
2015/05/26 职场文书
团干部培训班心得体会
2016/01/06 职场文书
nginx优化的六点方法
2021/03/31 Servers
自定义函数实现单词排序并运用于PostgreSQL(实现代码)
2021/04/22 PostgreSQL
MySQL Threads_running飙升与慢查询的相关问题解决
2021/05/08 MySQL
HTML基础详解(上)
2021/10/16 HTML / CSS
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript