获取QQ音乐排行榜数据
获取qq音乐排行榜的数据,比如内地榜.
首先看一下是否有API。Google发现QQ音乐官方是没有API的,不过有一些第三方的API,比如QQ 音乐API koa2实现。可惜没有我先要的数据的API。
然后我想可以写一个爬虫,看这个网页的结构是比较简单的,想着应该比较简单吧。一般写爬虫是用Python,用Request、BS4、Selenium我之前也用过。因为Python这门语言已经一两年没用了,我最近熟练度比较高的语言是JavaScript,所以打算用JavaScript来看看能否写一个爬虫(而且我一直觉得JS就是为Web而生,怎么能不用来写爬虫)。
JavaScript是可以写爬虫,但是用的人相当的少。查了一下,用来构建HTTP请求的,要么是直接用XMLHttpRequest,要么使用第三方库jQuiry或axios,两者都是对XMLHttpRequest进行了包装而变得易用。相比之下,使用axios更好。于是用了axios来发起HTTP响应。然后使用cheerio来解析请求回来的文档(也可以使用JQuery,cheerio其实是JQ的dom功能实现)。确实还挺简单的,比如下(具体怎么用看axios和cheerio的文档,或者一些别人写的博客即可):
const axios = require("axios");
const cheerio = require("cheerio")
axios.get("www.baidu.com").then(function (response) {
var $ = cheerio.load(response.data);
var ele = $('#root'); //