0
我正在用Javascript(Express)爲個人目的構建網站刮板。從循環中的偶數個對象創建數組
該腳本的目標是從外部來源刮取一些簡單的文本數據,最終輸出被刮取的數據爲JSON
對象。 但是,因爲總會有偶數量的對象,所以我想將它們作爲成對添加到數組中,這是我需要來自你們的一些指導的部分。
輸出的電流只是一個普通的JSON對象/基於刮對象(通常在8-16)的量對象:
{
name: "John Doe",
email: "[email protected],
status: "active"
},
{
name: "Jane Doe",
email: "[email protected],
status: "inactive"
},
{
name: "Johnny Walker",
email: "[email protected]",
status: "active"
},
{
name: "Jimmy Glenfiddich",
email: "[email protected]
status: "active"
}
和預期輸出會是這個樣子:
{
"pair-number": 1,
"pair:" [
{
name: "John Doe",
email: "[email protected],
status: "active"
},
{
name: "Jane Doe",
email: "[email protected],
status: "inactive"
},
]
},
{
"pair-number": 2,
"pair:" [
{
name: "Johnny Walker",
email: "[email protected]",
status: "active"
},
{
name: "Jimmy Glenfiddich",
email: "[email protected]
status: "active"
}
]
}
下面是使用MO我server.js
var express = require('express');
var request = require('request');
var cheerio = require('cheerio');
var app = express();
var url = 'http://testurl.com;
var name, email, status;
app.get('/scrape', function(req, res) {
request(url, function (error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
data = {"name": name, "email": email, "status": status };
$('.scrape-class').filter(function() {
var that = $(this);
name = that.find('h5').text();
email = that.find('.email').text();
status = that.find('dl').children().first().text();
data.name = name;
data.email = email;
data.status = status;
console.log(data);
});
}
});
});
app.listen(80, function() {
console.log('Example app listening on port 80!')
})