猿问

Cheerio 不工作。我究竟做错了什么?

我正在尝试抓取分类广告搜索结果页面。


我试过控制台记录我所能做的一切以确保我得到了响应,我就是这样,但是当我实际使用cheerio查询某些东西时,我没有得到任何回复。例如,如果我只是查询有多少孩子使用$('.listing-group').children('section').length我回来0而不是24在我控制台记录它时。


这就是我正在做的事情。原谅我的长网址。


const request = require("request");

const cheerio = require("cheerio");

const app = express();


app.get("/scrape", function(req, res) {

  url =

    "http://classifieds.ksl.com/search/?keyword=code&category%5B%5D=Books+and+Media&zip=&miles=25&priceFrom=&priceTo=&city=&state=&sort=";


  request(url, function(error, response, html) {

    if (!error) {

      let $ = cheerio.load(html);


      let test = $("#search-results").find("section").length


      console.log(test);


    } else {


      console.log("there has been an error");


    }


    res.send("Check the console.");


  });

});


app.listen("8081");

console.log("check localhost:8081/scrape");

exports = module.exports = app;

我是cheerio的新手,所以我假设我可能犯了一个简单的错误,但是通过我检查过的所有教程,我似乎找不到答案。


最终,我想获取页面上的每个结果(在“部分”标签中找到)以显示我正在处理的个人项目的数据。


FFIVE
浏览 157回答 1
1回答

ITMISS

看起来像:JSON.parse(html.match(/listings: (\[.*\])/)[1])
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答