Grattage du contenu dynamique phantomjs
Mon entreprise est à l'aide d'un site web qui héberge l'ensemble de notre FAQ et questions des clients. Nous avons des plans pour aller à travers et effacer toutes les données et l'entrée de nouvelles et le service ne dispose pas d'une sauvegarde ou d'archive option pour les questions que nous ne voulons pas plus apparaître.
Que j'ai vécu et a essayé de scape le site à l'aide de perl et de mécaniser, mais il me manque les commentaires des clients sur la page qu'ils sont chargé via ajax. J'ai regardé phantomjs et peut obtenir les pages pour enregistrer une image à l'aide d'un exemple de page, cependant, je voudrais avoir une pleine page html de vidage de la page, mais ne peuvent pas comprendre comment. J'ai utilisé cet exemple de code sur notre site
var page = new WebPage();
page.open('http://espn.go.com/nfl/', function (status) {
//once page loaded, include jQuery from cdn
page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function() {
//once jQuery loaded, run some code
//inserts our custom text into the page
page.evaluate(function(){$("h2").html('Many NFL Players Scared that Chad Moon Will Enter League');});
//take screenshot and exit
page.render('espn.png');
phantom.exit();
});
});
Est-il un moyen à l'aide de phantomjs que je peux obtenir une pleine page de vidage des données, même si j'ai fait un affichage de la source de google chrome? Je peux le faire avec perl + mécaniser, mais je ne vois pas comment faire cela à l'aide de phantomjs.
OriginalL'auteur user985590 | 2012-12-10
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
page.content
pour obtenir le plein DOM HTMLOriginalL'auteur McMeep
Je recommanderais pjscrape http://nrabinowitz.github.com/pjscrape/ si vous voulez gratter à l'aide de PhantomJS
OriginalL'auteur Radhouane Fazai