Optimize getInfo

This commit is contained in:
Moe Poi ~ 2020-05-11 17:56:00 +00:00
parent e4e8524b9c
commit b7770e4483

View file

@ -7,29 +7,28 @@
const axios = require('axios'); const axios = require('axios');
const cheerio = require('cheerio'); const cheerio = require('cheerio');
let links = []; const getInfo = url => {
const getInfo = (url) => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
axios.get(url).then(function(req) { axios.get(url)
.then(req => {
try {
const links = [];
let soup = cheerio.load(req.data); let soup = cheerio.load(req.data);
var title = soup("title").text(); let title = soup("title").text();
soup('div.liner').each(function(i, e) { soup('div.liner').each(function(i, e) {
soup(e).find('div.listlink').each(function(j, s) { soup(e).find('div.listlink').each(function(j, s) {
links.push(soup(s).find('a').attr('href')) links.push(soup(s).find('a').attr('href'))
}); });
}); });
var data = { const data = {
"title": title, "title": title,
"links": links "links": links
}; };
if (data == null) { resolve(data)
reject("No result :("); } catch (err) {
} else { reject('Error : ' + err)
var result = JSON.stringify(data, null, 2);
resolve(result);
} }
}); })
}); });
}; };