使用Readability Parser API中的数据



在Node.js:中使用Readability Parser API时

var request = require("request");
request("https://readability.com/api/content/v1/parser?url=http://www.gq.com/sports/profiles/201202/david-diamante-interview-cigar-lounge-brooklyn-new-jersey-nets?currentPage=all&token=7myToken", function(err, resp, body) {
console.log(body);
});

得到这样的文章表示:

{
"content" <div class="article-text">n<p>I'm idling outside Diamante's, [snip] ...</p></div>",
"domain": "www.gq.com",
"author": "Rafi Kohan",
"url": "http://www.gq.com/sports/profiles/201202/david-diamante-interview-cigar-lounge-brooklyn-new-jersey-nets?currentPage=all",
"short_url": "http://rdd.me/g3jcb1sr",
"title": "Blowing Smoke with Boxing's Big Voice",
"excerpt": "I'm idling outside Diamante's, a cigar lounge in Fort Greene, waiting for David Diamante, and soon I smell him coming. It's late January but warm. A motorcycle growls down the Brooklyn side street,&hellip;",
"direction": "ltr",
"word_count": 2892,
"total_pages": 1,
"date_published": null,
"dek": "Announcer <strong>David Diamante</strong>, the new voice of the New Jersey (soon Brooklyn) Nets, has been calling boxing matches for years. On the side, he owns a cigar lounge in the heart of Brooklyn. We talk with Diamante about his new gig and the fine art of cigars",
"lead_image_url": "http://www.gq.com/images/entertainment/2012/02/david-diamante/diamante-628.jpg",
"next_page_id": null,
"rendered_pages": 1
}

如何使用数据?例如,只使用"word_count"?这个代码似乎不起作用:

console.log(body.word_count);

您需要使用JSON.parse(body)string结果转换为对象。

var request = require("request");
request('your-url', function(err, resp, body) {
    var parsedBody = JSON.parse(body);
    console.log(parsedBody.word_count);
});

根据request文档,您还可以在选项中将json设置为true,使其自动解析json:

var request = require("request");
request({
    url: 'your-url',
    json: true
}, function(err, resp, body) {
    console.log(body);
});

最新更新