2010-07-08 3 views
2

J'essaie de lire les données d'un site Web. Je peux voir la valeur dont j'ai besoin mais la valeur n'apparaît pas dans le code html téléchargé (en utilisant urllib2). La valeur est créée par un fichier js et intégrée dans la page Web sous le nom de innerhtml pour cet identifiant. PS: Comment cela peut-il être extrait? le code source brut ne peut pas rendre js contrairement aux navigateurs!BeautifulSoup obtenir des données innerhtml

Répondre

1

Vous avez deux options: Faites en sorte que le navigateur enregistre le DOM (cela inclut toutes les modifications apportées par les scripts) ou utilisez un moteur JavaScript pour exécuter les scripts incorporés.

Pour cette dernière route, essayez un moteur basé sur Java comme Rhino et émuler le navigateur avec env.js.

+0

Comment sauvegarder automatiquement DOM du navigateur? Merci pour la méthode d'émulation, mais connaissez-vous une façon pythonique de le faire? – zubinmehta

+0

Essayez Selenium comme suggéré par mamoo. –

Questions connexes