Ich bin neu mit phantom.js und ich versuche, auf einer Website-Seite zu navigieren, auf einen Link (der eine AJAX-Funktion aufruft und ändert die Dokument HTML) mit phantom.js.Klicken Sie auf einen Link mit phantom.js und rufen Sie das Dokument html
Hier ist mein Code:
window.setTimeout(function(){
phantom.exit();
}, 120000);
var page = require('webpage').create();
page.open("http://example.com", function(status) {
if (status !== 'success') {
console.log('{"error":"Unable to load the address for page"}');
phantom.exit();
}
var action = page.evaluate(function() {
document.getElementById("anID").click();
return "clicked";
});
var results = page.evaluate(function() {
return document.documentElement.innerHTML;
});
console.log(action);
window.setInterval(function() {
console.log(results);
phantom.exit();
}, 3000);
});
Ich bin sehr verwirrend wie in meiner "action" Funktion ist die Taste() Aufruf, dass Fehler 3 mal wiederholt Anhebung:
TypeError: 'undefined' is not a function
phantomjs://webpage.evaluate():3 phantomjs://webpage.evaluate():1
ph.js:121 nullTypeError: 'undefined' is not a function
phantomjs://webpage.evaluate():3 phantomjs://webpage.evaluate():1
ph.js:121 nullTypeError: 'undefined' is not a function
phantomjs://webpage.evaluate():3 phantomjs://webpage.evaluate():1
ph.js:121 null
Auch , Wenn ich die Zeile kommentiere, wenn ich einen Klick sende, löst die Aktionsfunktion keinen Fehler mehr aus und gibt das "angeklickte" Konsolenprotokoll zurück. Aber 3 mal ...
Was mache ich falsch?
Vielen Dank im Voraus.
FYI Sie haben 2 Semikolons nach dieser Zeile:. 'Document.getElementById („ANID“) klicken() ;;' –
Ja Dank es ist ein Fehler beim Posten, Problem immer noch da. – ronnieonrails