Javascript Node.js爬虫:通过cheerio通过文本查找a href

Javascript Node.js爬虫:通过cheerio通过文本查找a href,javascript,jquery,node.js,Javascript,Jquery,Node.js,我的节点应用程序使用请求库从某个webiste获取HTML代码。通过使用jQuery(cheerio),我想找到一个href to contact部分。但我只得到未定义的值 request(options.websiteUrl, (err, response, body) =>{ if(!err && response.statusCode == 200){ let $ = cheerio.load(body

我的节点应用程序使用请求库从某个webiste获取HTML代码。通过使用jQuery(cheerio),我想找到一个href to contact部分。但我只得到未定义的值

request(options.websiteUrl, (err, response, body) =>{
            if(!err && response.statusCode == 200){

                    let $ = cheerio.load(body); 
                    let contact =  $('a:contains("contact")').attr('href');
                    console.log(contact); //undefined

            }
    });

我已经将同一个jQuery命令直接粘贴到该网站的JS控制台中,它运行良好,为我提供了适当的href。常规jQuery和Cheerio之间有什么区别,使我无法在我的节点应用程序中执行该代码,我如何修复它?

Cheerio似乎没有等待响应主体javascript完全加载。您可以将cheerio代码块包装在
setTimeout
中,以便给cheerio加载身体的时间

您可以看到另一个类似的堆栈溢出帖子