2016-12-16 4 views
1

Hilf mir, wie man auf die URL des Arrays gehen? Das Problem ist, dass die Liste der URL von anderen Seiten (Casper) geht und zunächst unbekannt ist. Beispiel:Casper.js Links von Array

casper.thenEvaluate(function() { 
    var links = new Array; 

    $('.ValueBets > li').each(function() { 

      links.push($(this).find('.MDxMatchLink').attr('href')); 

    }); 

}); 

Antwort

0

Ich denke, (habe es nicht beweisen) eines der Probleme ist, dass Sie Ihre Array innerhalb der auswerten definieren, sowieso kann ich Ihnen diese Lösung für Sie Problem (getAllHref):

var casper = require('casper').create(); 
var url = "yourTargetUrl"; 
var links; 

function getAllHref() { 
    var hrefs = casper.evaluate(function() { 
     return Array.prototype.map.call(document.querySelectorAll('a'), function(e) { 
      return e.getAttribute('href'); 
     }); 
    }); 
    return hrefs; 
} 
casper.start(url); 
casper.then(function() { 
    // statements 
    links = getAllHref(); 
}); 
casper.then(function() { 
    // show all links at once 
    casper.echo(JSON.stringify(links)); 

    // show single hrefs 
    while (links.length > 0) { 
     link = links.pop(); 
     (function(link) { 
      casper.then(function() { 
       casper.echo('link: ' + link); 
      }); 
     })(link); 
    } 
}); 
casper.run(); 
Verwandte Themen