Betrachten Sie den folgenden Code ...PhantomJS includeJs() + Nested evaluate() funktioniert nicht
var page = require('webpage').create();
console.log('The default user agent is ' + page.settings.userAgent);
page.settings.userAgent = 'Lisas headless browser';
page.open('http://www.httpuseragent.org', function(status) {
if (status !== 'success')
{
console.log('Unable to access network or site is down');
}else{
page.includeJs(
// Include the https version, you can change this to http if you like.
'https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js',
function() {
(page.evaluate(function() {
// jQuery is loaded, now manipulate the DOM
console.log(document.getElementById('myagent').textContent);
}))
}
);
}
phantom.exit();
});
Ich versuche, einige Code zu bekommen gehen die jquery Einsätze und dann erlaubt mir Aktionen, die es durchführen, um fortzufahren, aber nicht auswertet includeJs()
Nun, eigentlich kann er innerhalb von page.evaluate verwenden console.log. Abonnieren Sie einfach Nachrichten von der Konsole mit [page.onConsoleMessage] (http://phantomjs.org/api/webpage/handler/on-console-message.html). – Vaviloff
Danke. Ich habe etwas Neues gelernt - ich werde die Antwort aktualisieren. –