Obtention de données financières auprès de Google Finance en dehors du champ d'application de l'API

StackOverflow https://stackoverflow.com/questions/1009524

Question

L'API des finances de Google est incomplète - de nombreux chiffres sur une page tels que:

http://www.google.com/finance?fstype=ii& ; q = NYSE: GE

ne sont pas disponibles via l'API.

J'ai besoin de ces données pour classer les sociétés sur les marchés boursiers canadiens selon la formule de Greenblatt, disponible via la recherche google pour "analyses de l'indice de greenblatt".

Ma question: quel est le moyen le plus intelligent / propre / efficace d’accéder et de traiter les données de ces pages Web. L'approche fastidieuse est-elle vraiment nécessaire dans ce cas, et si oui, quelle est la meilleure façon de s'y prendre? J'apprends actuellement Python pour des projets liés à celui-ci.

Était-ce utile?

La solution

Vous pouvez essayer de demander à Google de fournir les API manquantes. Sinon, vous êtes coincé avec la la suppression d'écran , qui n'est jamais amusante, susceptible de se briser sans préavis et probablement en violation des conditions d'utilisation de Google .

Toutefois, si vous souhaitez toujours écrire un grattoir, il est difficile de battre une combinaison de mécaniser et BeautifulSoup . BeautifulSoup est un analyseur HTML et mécanize est un navigateur Web basé sur Python qui vous permet de vous connecter, de stocker des cookies et généralement de naviguer comme tout autre navigateur Web.

Autres conseils

BeautifulSoup serait la méthode préférée pour l'analyse HTML avec Python

Avez-vous examiné des options autres que Google (par exemple, l'API Finance de Yahoo)?

Déchirer les pages Web est toujours une tâche inutile, mais je recommanderais de les convertir au format XML (via tidy ou un autre programme HTML - & XML) puis d'utiliser xpath pour parcourir les nœuds qui vous intéressent.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top