2014-01-14 69 views
1

所以我正在使用Cheerio進行一些簡單的網頁掃描。它工作得很好,輸出顯示在我的cmd行中。我可以從命令行獲取數據並以某種方式將其放入某個JavaScript中嗎?我基本上想在另一個網頁上重新創建這些被刮掉的數據。在網頁的cmd行顯示數據

var request = require('request'); 
var cheerio = require('cheerio'); 

request('https://news.ycombinator.com', function (error, response, html) { 
    if (!error && response.statusCode == 200) { 
    var $ = cheerio.load(html); 
    $('span.comhead').each(function(i, element){ 
     var a = $(this).prev(); 
     console.log(a.text()); 
    }); 
} 
}); 

任何建議將不勝感激。

回答

1

您可以將數據附加到加載JavaScript的頁面。

<html> 
<body> 
<ul id="results"> 
</ul> 
</body> 
</html> 

$("#results").append('<li>' + a.text() + '</li>'); 

基於您的評論取代

console.log(a.text()); 

我明白你的意思。我剛剛研究了cheerio,發現可以將我提供的html加載到變量中。

//outside of the each, declare $results 
var $results = cheerio.load('<html><body><ul id="results"></ul></body></html>'); 
//instead of the first append I gave (above), use this 
$results.append('<li>' + a.text() + '</li>'); 

則可以輸出HTML結果與一些瀏覽器一樣

res.send($results.html()); 
+0

完美!乾杯史蒂夫! – Daft