使用javascript和CasperJS从JSON url中提取特定键:值对

时间:2017-01-19 00:28:57

标签: javascript json casperjs

说网址是:https://api.github.com/users/mralexgray/repos

我只想提取" html_url"的所有键:值对。键。

我一直在尝试使用以下内容:

function extractJSON() {
  $.ajax({
    url: "https://api.github.com/users/mralexgray/repos",
    dataType: 'json',
    success: function(data) { 
        alert(data.html_url);
        return data.html_url;
    };

  });

 // casperjs begins below

casper.start(https://api.github.com/users/mralexgray/repos, function() {
});

casper.then(function() {
var output = this.evaluate(extractJSON());
this.echo(output);
});

casper.run();

感谢您抽出宝贵的时光!

1 个答案:

答案 0 :(得分:0)

可能的解决办法可能是抓取这个网站的整个文本并在json中解析它,然后你可以像这样轻松访问json:

var casper = require('casper').create();
var url = 'https://api.github.com/users/mralexgray/repos';
var text;
var json;

casper.start(url);

casper.then(function() {
  text = casper.fetchText('body pre');
  json = JSON.parse(text);
});
casper.then(function() {
  for (var i=0; i < json.length; i++) {
    casper.echo("html_url: " + json[i].html_url);
    casper.echo("html_url owner: " + json[i].owner.html_url);
  }
});

casper.run();