Je suis nouveau à PhantomJS
et en jouant avec le code le plus basique: aller chercher une page google et capturer la capture d'écran.PhantomJS ne rend pas le contenu de la page complète
L'URL que je suis en train de chercher est: https://www.google.com/#tbm=lcl&q=starbucks
Si vous l'ouvrez dans un vrai navigateur, vous verrez qu'il ressemble à ceci:
Mais mes PhantomJS il voit ceci:
au début, je pensais que la charge de contenu web async Comme je suis trop lent, j'ai réussi à attendre plusieurs secondes avant de capturer l'écran, mais je vois que PhantomJS n'arrive toujours pas à obtenir le contenu.
Voici mon extrait de code:
var page = require('webpage').create();
page.settings.userAgent = 'Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36';
page.viewportSize = { width: 1280, height: 800 };
page.open('https://www.google.com/#tbm=lcl&q=starbucks', function() {
setTimeout(function(){
page.render('screenshot_failed.png');
phantom.exit();
}, 5000);
});
S'il vous plaît-moi de ce que je peux manquer lors de la récupération de cette page Web. Merci!
Avez-vous essayé de définir la taille de la fenêtre? 'page.viewportSize = { largeur: 480, hauteur: 800 };' – quirimmo
Salut @quirimmo merci pour le commentaire. Oui j'ai essayé de le régler à 1280x800, mais cela n'a pas aidé. (Je vais mettre à jour la question pour refléter ce changement.) –
oh bizarre, pouvez-vous essayer aussi une autre solution s'il vous plaît? l'afficher comme réponse mais je vais le supprimer si cela ne va pas aider. C'est horrible écrire ou coller le code ici -.- – quirimmo