簡體   English   中英

Node.js搜尋器:通過cheerio通過文本查找href

[英]Node.js crawler: find a href by text via cheerio

我的節點應用程序從具有請求庫的某個網站獲取HTML代碼。 通過使用jQuery(cheerio),我想找到一個href來聯系部分。 但是然后我只得到未定義的值。

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時間。

您可以在此處看到另一個與此類似的堆棧溢出信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM