Recherche google via script python3

Fermé
guillaumealiasgros Messages postés 107 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 2 novembre 2014 - 31 oct. 2014 à 17:49
Ometeoltloque Messages postés 38 Date d'inscription jeudi 23 octobre 2014 Statut Membre Dernière intervention 10 décembre 2014 - 8 nov. 2014 à 19:11
Bien le bonjour.

Alors voilà , je me suis lancé dans la conception d'une petite appli en Python3, et comme je le dis dans le titre, j'aimerais pouvoir faire des recherches avec le moteur Google directement dans mon script, j'ai cherché mais je n'ai rien trouvé qui me convienne dans les modules et librairies Python3, alors dois-je écrire un petit module moi-même ou puis-je trouver quelque chose de convenable qui existe déjà ?
Ah oui, une dernière chose, je suis sous Debian et Linux mint.

Merci de vos futurs réponses , Guillaume.
A voir également:

3 réponses

Ometeoltloque Messages postés 38 Date d'inscription jeudi 23 octobre 2014 Statut Membre Dernière intervention 10 décembre 2014 2
1 nov. 2014 à 17:01
Dans la page de recherche Google générée, les noms des sites trouvés écrits en bleu sont des liens avec pour URL http://www.google.fr/url?url=http://fr.wikipedia.org/wiki/Google_(moteur_de_recherche)&rct=j&q=&esrc=s&sa=U&ei=cQFVVLGfEYH4Oqu-gMgI&ved=0CD4QFjAI&sig2=PGKXVafIruJk4gTvR3pPjA&usg=AFQjCNEQ6Q0NrM11KsvQPQ3HQJirjWgJkg

Il me semble qu'en Python, il existe des bibliothèques spéciales pour la manipulation de documents XML (et le HTML, c'est du XML), donc tu devrais pouvoir t'en sortir.

Après une "étude" plus approfondie d'une page de recherche Google, j'ai remarqué que les résultats sont rangés dans la deuxième colonne de la première ligne d'un tableau ayant pour id "mn". En extrayant tout les liens de cette colonne, qui sont a priori des liens comme dans l'exemple ci-dessus, tu devrais pouvoir récupérer les URL des sites. Par contre, je pense que tu devrais apprendre avant quelques notions de HTML, ça te sera utile pour te retrouver dans le code source....
1
guillaumealiasgros Messages postés 107 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 2 novembre 2014 51
2 nov. 2014 à 13:20
Merci beaucoup pour cette réponse très précise et rapide !
Je suis en effet un cour sur le HTML, ce qui m'aidera beaucoup pour ce projet.
Je vais poursuivre mes recherches, ton aide m'a été précieuse.
Encore merci, bonne journée.
0
guillaumealiasgros Messages postés 107 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 2 novembre 2014 51
2 nov. 2014 à 20:47
En fait le code renvoyé par
urllib.request.urlopen(url)
ne contient pas toute la page, ce qui fait que je n'ai pas tout ça .
0
Ometeoltloque Messages postés 38 Date d'inscription jeudi 23 octobre 2014 Statut Membre Dernière intervention 10 décembre 2014 2
31 oct. 2014 à 18:17
Pas franchement certain qu'il existe des bibliothèques pour ça.... Ceci, ça ne doit pas être très compliqué à faire.... Une recherche Google ayant pour URL : https://www.google.fr/search?q=une+recherche+google ce n'est pas très compliqué à construire.
0
guillaumealiasgros Messages postés 107 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 2 novembre 2014 51
31 oct. 2014 à 23:19
Exactement ! Je suis parti sur ce principe sauf que c'est pas aussi simple, le truc c'est que les adresses des différents sites n'apparaissent pas dans la page web Google générée (ceci dit je ne connais rien en HTLM, ni en PHP) donc impossible de sortir les liens par un tri (c'est la finalité de mon script normalement).
Merci pour cette réponse rapide
0
guillaumealiasgros Messages postés 107 Date d'inscription dimanche 24 avril 2011 Statut Membre Dernière intervention 2 novembre 2014 51
2 nov. 2014 à 19:48
Juste comme ça, est-ce que
urllib.request.urlopen(url)
récupère tout le code de la page ?
0
Ometeoltloque Messages postés 38 Date d'inscription jeudi 23 octobre 2014 Statut Membre Dernière intervention 10 décembre 2014 2
8 nov. 2014 à 19:11
Oups, désolé, un peu long à la détente!
Je suis désolé, mais je ne connais pas du tout les fonctions de Python pour ce genre d'utilisation.
0