今天看啥  ›  专栏  ›  科技男

NodeJs入门,带你获取头条热搜形成好看的标签云

科技男  · 掘金  ·  · 2020-03-10 02:49
阅读 46

NodeJs入门,带你获取头条热搜形成好看的标签云

在学习NodeJs之前,你可能需要学习JavaScript,最好也了解一下es6。

我们这篇文章是针对今日头条(以下称头条)的热搜榜数据的分析,形成一种标签云,重点是如何获取热搜榜的数据。

此篇文章只是分享学习过程,切勿利用此方法进行违法行为!

先了解下NodeJs

Node.js是一个JavaScript运行时环境(可以解析和执行JavaScript代码),它让javascript可以开发后端程序,Nodejs是基于V8引擎,V8是Google发布的开源JavaScript引擎,本身就是用于Chrome浏览器的js解释部分,但是Ryan Dahl 这哥们,鬼才般的,把这个V8搬到了服务器上,用于做服务器的软件。只要你懂js基础就可以学会Nodejs后端开发。

Nodejs 环境搭建

关于NodeJs环境搭建这里想必也不用多说,网上教程很多,如果你在看这篇文章的同时有具体问题的话可以私信我,这里不做多的说明。

我们直奔主题,我们先分析一下头条的热搜榜:

如何找到头条的热搜榜

1.打开头条的搜索,搜索【热搜】点击查看更多,进入的页面就是头条的热搜榜页面,当然还有其它的方式,毕竟头条的理念就是千人千面,你我看到的东西肯定是不一样的,大部分用户里面搜索都是可以进入热搜榜的。

2.进入热搜榜之后,我们只能看到数据,要对数据和页面进行分析,最好的办法就是将页面分享到电脑端,利用浏览器可以分析整个页面的数据。

3.好了,我这里已经找到了热搜榜的地址,由于地址较长,放到内容页面影响版式,我放到了文章结尾的扩展地址里,需要的点击扩展地址,进入之后选择复制地址。

页面分析

通过浏览器的network功能,我们很方便的就会看到,在这个页面获取热搜词的时候,调用了一个接口,那么我们获取热搜词的时候也可以调用,这里不方便将接口直接放出来,有需要的可以进入热搜榜提取接口地址。

数据提取

我们知道获取数据的接口,那么提取数据也就肯方便了,Nodejs支持npm安装大量的插件有助于开发,我们这里会用到request,等工具

首先我们获取热搜词

安装request 包

npm install --save request

我们通过分析发现获取热词的API是通过get请求的,那么我们用get请求的方式获取

var request = require('request');

request('热搜API地址', function (error, response, body) 
    { 
        if (!error && response.statusCode == 200) { 
        // do something 
        } 
    })
复制代码

我们请求后会拿到这样的数据

至此,数据的获取已经完成了,接下来我们要去怎么处理数据呢

数据的处理

我们读到的热词数据总共有60多条,60条数据生成的云图太单调了,那么我这边记录了近3天来的数据,总共是264条数据。我们将这264条数据放到云图中会是怎么样的呢?

我这里选用的是美寄词云在线生成的云图,需要将各个词用空格分割,那么我这里就需要将数据转换成以上的这种格式。

最终结果请看下图

更多精彩内容,请关注【科技男】头条号




原文地址:访问原文地址
快照地址: 访问文章快照