Tag:

node.js + cheerio scrape:传递一个url数组下载?

首先,这是我的代码,因为我已经进步到目前为止: var http = require("http"); // Utility function that downloads a URL and invokes // callback with the data. function download(url, callback) { http.get(url, function(res) { var data = ""; res.on('data', function (chunk) { data += chunk; }); res.on("end", function() { callback(data); }); }).on("error", function() { callback(null); }); } var cheerio = require("cheerio"); var url […]

cheeriojs – 如何遍历每个对象?

我有这个代码如下: $('.name').filter(function(){ var data = $(this); name = data.text(); json.name = name; }) 这将从这个div返回文本: <a href="javascript:void(0)" class="name">This is a name</a> 基本上在页面上有大约20张人的照片,所以在页面上有大约20个左右的<a>标签,并且有一个名字的类name 。 我将如何遍历每个<a>标记并生成一个JSONvariables,其中包含下面的内容 { [id: 0, name: 'name 1'],[id: 1, name: 'name 2'] } 目前我只能拿到一个名字的价值,这对我来说目前是无用的! 任何帮助感激!

使用cheerio刮嵌套的xml

我试图用cheerio来取消一些PubMed数据。 以下脚本可以正常工作,但是当某个xml标签不存在时,它会生成错误的输出。 var request = require('request'), cheerio = require('cheerio'); request('http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&retmode=xml&id=23545583,23103438', function(error, response, body) { var $ = cheerio.load(body); for (var i = 0; i < $('PubmedArticle').length; i++) { console.log($('PubmedArticle PMID').slice(0).eq(i).text()); console.log($('PubmedArticle DateCreated Year').slice(0).eq(i).text()); console.log($('PubmedArticle ArticleTitle').slice(0).eq(i).text()); console.log($('PubmedArticle Abstract AbstractText').slice(0).eq(i).text()); }; }); 在这个例子中,第一个标题下方的抽象输出代替第二个,因为第一个文章不包含抽象。