CasperJS - Wie man alle Links in einem Array von Links öffnet

7

Ich versuche es so zu machen, dass CasperJS jeden Link in einem array von Links öffnet. Ich habe es so, dass, nachdem ich einen Link geöffnet habe, es den Titel dieser Seite anzeigen wird. Aber wenn ich es ausführe, wird nichts angezeigt.

Ich kann ein for loop verwenden, um die Links anzuzeigen, und es funktioniert perfekt.

Dies ist der Code für das, was ich gerade erklärt habe:

%Vor%

Dies ist eine andere Methode, die ich ausprobiert habe:

%Vor%

Es sagt, dass "x" in undefiniert ist. Beachten Sie, dass ich jedoch x als globale Variable festlegen möchte. Alle Änderungen, die Sie vornehmen könnten, wären großartig. Danke.

    
Michael Yaworski 29.07.2013, 14:22
quelle

7 Antworten

7
%Vor%     
Michael Yaworski 29.07.2013, 22:20
quelle
7
%Vor%

hat für mich funktioniert.

    
dvg 01.05.2014 23:09
quelle
5
%Vor%     
abdel 09.05.2016 15:52
quelle
2

In meinem Fall musste ich eine Seite mit einer unbekannten Anzahl von Seiten scrappen. Jede Seite (außer der letzten) hatte einen <a class="next-page" href="/page/N">Next page</a> -Link (wobei N die Seitennummer ist). Es gab keine Möglichkeit für den Schaber zu wissen, wann es fertig war, außer wenn der Link "Nächste Seite" nicht mehr vorhanden war.

Natürlich müssen Sie Anpassungen vornehmen, je nachdem, welche Arten von Seitenumbruch-Links auf Ihrer Seite vorhanden sind.

Folgendes habe ich getan. Ymmv.

%Vor%

Hoffe, das hilft jemandem. Wenn Sie andere Fragen haben, werde ich gerne versuchen zu helfen.

    
user633183 08.07.2015 20:09
quelle
1
%Vor%

Und zu "undefined" Fehler. Versuchen Sie, dies nicht zu oft zu verwenden. Ich erfahre diesen Fehler oft mit CasperJS, also schreibe ich lieber casper statt dies.

    
VonAxt 08.01.2015 17:01
quelle
0

Versuchen Sie etwas wie das.

%Vor%

x war nicht definiert, weil die for-Schleife vor casper.start ausgeführt wurde. Im obigen Code ist der eachThen() -Block innerhalb eines casper.then -Blocks verschachtelt, um seine Ausführung zu verzögern.

    
hexid 29.07.2013 17:18
quelle
0

Ich habe das gleiche Problem mit diesem Code gelöst:

%Vor%     
Alex Albalá 02.05.2016 13:32
quelle