Node.js 用cheerio 抓取没有返回值

问题描述

我正在尝试使用 Node.js 自动执行我的任务,尝试在本地汽车乐透中找到中奖号码。

当我试图解析结果时,我什么也得不到。

这是我的尝试:

const rp = require('request-promise');
const $ = require('cheerio');
const url = 'https://www.otpbank.hu/portal/hu/Megtakaritas/ForintBetetek/Gepkocsinyeremeny';

rp(url)
 .then(function(html) {
   console.log($('.list-item list-item--primary ul li',html).text());
 })
 .catch(function(err) {
   //handle error
 });

解决方法

由于 'list-item--primary' 已经是 li 元素,请尝试:

const rp = require('request-promise');
const cheerio = require('cheerio');
const url = 'https://www.otpbank.hu/portal/hu/Megtakaritas/ForintBetetek/Gepkocsinyeremeny';

rp(url)
 .then(function(html) {
    const $ = cheerio.load(html);
    let data = [];
    $('.list-item--primary').map((i,elm) => {
        console.log(elm.innerText);
    });
 })
 .catch(function(err) {
   //handle error
 });