2017-09-20 1 views
-1

J'utilise actuellement le sélénium avec PhantomJS pour gratter le contenu généré par javascript à partir d'une page Web. Bien que cela me donne les résultats que je recherche, c'est une approche lente car j'ai besoin d'attendre que la page se charge avant de gratter. Existe-t-il un moyen d'exécuter directement le javascript qui génère le contenu que je recherche? Si oui, l'approche sera-t-elle plus rapide que celle que j'utilise actuellement?comment obtenir du contenu généré par javascript à partir de la page Web directement?

Merci!

+1

'J'ai besoin d'attendre le chargement de la page avant de l'érafler 'Peut-être la sémantique, mais y a-t-il moyen de gratter une page avant de l'avoir (c'est-à-dire de charger)? – Vaviloff

+0

Le contenu est-il réellement * généré * par javascript ou (plus probablement) * récupéré * par ce javascript à partir d'une source externe? – Peteris

+0

Ou voulez-vous dire que cette page se charge généralement lentement? Si oui, jetez un oeil à cette question et répondez: https://stackoverflow.com/a/42710420/2715393 – Vaviloff

Répondre

0

Malheureusement, il n'y en a pas. J'ai rencontré ce problème plusieurs fois et la seule solution que j'ai trouvée est d'aborder le problème comme vous le faites déjà. Étant le contenu js-généré, la seule façon de le récupérer est de l'obtenir à partir d'un navigateur, donc en utilisant du sélénium avec le pilote que vous préférez.