首页 > 解决方案 > 在node.js中使用cherio(两次)导出网络链接

问题描述

我想获取一页的链接并输入其中一个链接并再次获取指向新页面的链接。

我与 Cherio 合作,问题是获取第二页的链接时遇到错误。

我的代码:

var request = require('request');
var cheerio = require('cheerio');

var url = 'https://www.aparat.com/search/' + args[1];

request(url, function(err, resp, body) {
 var $ = cheerio.load(body);
 links = $('a');
 $(links).each(function(i, link) {
  var href = $(link).attr('href');
  linkss.push(href);
  //console.log(array);
 });
});

const videolists = linkss.filter((word) => (word = '/v/'));

url = 'https://www.aparat.com' + videolists[0];
request(url, function(err, resp, body) {
 $ = cheerio.load(body);
 links = $('a');
 $(links).each(function(i, link) {
  var href = $(link).attr('href');
  linksss.push(href);
 });
});

错误 :

音乐\node_modules\cheerio\lib\parse.js:69 var oldParent = node.parent || 节点根,^

TypeError:无法在 module.exports( C:\Users\Administrator\Desktop\Bots\Aparat music\node_modules\cheerio\lib\parse.js:19:11) 在 Function.exports.load (C:\Users\Administrator\Desktop\Bots\Aparat music\node_modules \cheerio\lib\static.js:27:14) 在 Request._callback (C:\Users\Administrator\Desktop\Bots\Aparat music\index.js:56:33) 在 self.callback (C:\Users\ Administrator\Desktop\Bots\Aparat music\node_modules\request\request.js:185:22) 在 Request.emit (events.js:315:20) 在 Request.onRequestError (C:\Users\Administrator\Desktop\Bots\ Aparat music\node_modules\request\request.js:877:8) at ClientRequest.emit (events.js:315:20) at TLSSocket.socketErrorListener (_http_client.js:426:9) 在 TLSSocket.emit (events.js:315:20)

标签: javascriptnode.jsnpm

解决方案


推荐阅读