node.js - 需要关于 Cheerio eq() 变量的建议

标签 node.js request cheerio

所以我有这个 node.js 脚本,它可以抓取网页的某些部分:

var cheerio = require('cheerio');
var request = require('request');
var x = 1;
request({
    method: 'GET',
    url: 'https://balticnews.net/'
}, function(err, response, body) {
    if (err) return console.error(err);
    $ = cheerio.load(body);
    $('#table, td').eq(x).each(function() {
    console.log($(this).text());
    });
});

但我需要 x 改变。我尝试创建一个 for 循环,但没有任何改变。我需要当我运行这个程序时,它会显示 x=1 然后 1+5 然后 6+5 等等的结果,这很难解释:D 当然我可以复制并粘贴很多次并选择我需要的号码:

$('#table, td').eq(x).each(function() {
    console.log($(this).text());
});

但我想学习如何做得更快

最佳答案

所以我知道你只想要索引:1,6,11 ..可能的解决方案是:

//Not tested
$('#table, td').each(function(index,element) {
     if(index%5==1){
        element.each(function(){
           console.log($(this).text());
       })

     }
});

关于node.js - 需要关于 Cheerio eq() 变量的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34885748/

相关文章:

json - 使用 Cheerio 遍历 html 表

javascript - 如何在.pipe中使用cheerio.load(cheerio(function($){?

node.js - 使用 Nginx 时 socket.io 出现 CORS 错误

json - for 循环中的异步,Nodejs

javascript - 使用请求并让回调在函数内工作的异步调用

javascript - 从nodejs服务器端进行ajax调用

node.js - Express - 为什么代码永远不会返回?

javascript - “await”在异步函数中不起作用

javascript - 基于函数式编程的 JavaScript 应用程序是如何布局的?

javascript - 使用 cheerio(JQuery API)在 Node js 上解析