Quelqu'un pourrait-il m'aider sur la façon d'écrire un script python qui recherche google et imprime les liens des meilleurs résultats.Recherche Google en utilisant le script python
Répondre
Peut-être que quelque chose comme ça?
import urllib import json as m_json query = raw_input ('Query: ') query = urllib.urlencode ({ 'q' : query }) response = urllib.urlopen ('http://ajax.googleapis.com/ajax/services/search/web?v=1.0&' + query).read() json = m_json.loads (response) results = json [ 'responseData' ] [ 'results' ] for result in results: title = result['title'] url = result['url'] # was URL in the original and that threw a name error exception print (title + '; ' + url)
Lire la documentation http://docs.python.org/
Cela donne cinq résultats seulement? – user567879
Cette API n'est plus disponible. Nous devons utiliser https://developers.google.com/custom-search/ –
il est mieux suggéré d'utiliser Google APIs mais une version très laid .. (alternative à utiliser google api) vous pouvez filtrer le contenu si vous voulez
import os, urllib, sys
filename = 'http://www.google.com/search?' + urllib.urlencode({'q': ' '.join(sys.argv[1:]) })
cmd = os.popen("lynx -dump %s" % filename)
output = cmd.read()
cmd.close()
print output
il affichera exactement ce qu'un navigateur devrait afficher lorsque vous recherchez quelque chose sur google
intéressant pour le "lynx -dump" – mt3
Je reçois généralement de bons résultats avec 're' (module d'expression régulière) pour" vider "le code source de pages Juste au cas où l'utilisation de Linux n'est pas disponible, o) – heltonbiker
Il existe une autre bibliothèque sympa appelée xgoogle. Vous pouvez l'utiliser en cas. Voici le lien http://www.catonmat.net/blog/python-library-for-google-search/
from pygoogle import pygoogle
g = pygoogle('quake 3 arena')
g.pages = 5
print '*Found %s results*'%(g.get_result_count())
g.get_urls()
Dude vous avez juste copié et collé cela de la pygoogle, qui ne fonctionne plus fyi. Vous avez fourni zéro expliquer aussi bien. – reticentroot
Comme @Zloy Smiertniy a souligné, la réponse se trouve here.
Cependant, si vous utilisez Python 3, la syntaxe de raw_input
, urllib
a changé, et il faut décoder le response
. Ainsi, pour Python 3 on peut utiliser:
import urllib
import urllib.request
import json
url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&"
query = input("Query:")
query = urllib.parse.urlencode({'q' : query })
response = urllib.request.urlopen (url + query).read()
data = json.loads (response.decode())
results = data [ 'responseData' ] [ 'results' ]
for result in results:
title = result['title']
url = result['url']
print (title + '; ' + url)
En python3 je reçois cette erreur: l'objet 'module' n'a pas d'attribut 'parse' –
Hmm ... étrange. Il devrait être là selon https://docs.python.org/3/library/urllib.html. J'ai remarqué qu'après avoir réexécuté le script, j'ai dû ajouter 'import urllib.request' (maintenant dans la réponse mise à jour), donc peut-être' importer urllib.parse' pourrait vous aider dans votre cas. Notez également qu'après avoir réexécuté le script, j'ai eu des problèmes pour obtenir une sortie pour 'response', donc le' url' peut avoir changé depuis que j'ai utilisé le script la dernière fois. Bonne chance –
Cette API n'est plus disponible, l'alternative est [google-custom-search] (https://developers.google.com/custom-search/). – ands
Je suis un débutant à Python. Juste mon idée simple pour une recherche google.
import webbrowser
lib=raw_input("Enter what you want to search for:")
ur="https://www.google.co.in/gfe_rd=cr&ei=Q7nZVqSBIMSL8QeBpbOoDQ#q="
webbrowser.open_new(ur+lib)
Cela ne fait pas réellement ce qui a été demandé; il effectue une recherche google en ouvrant une fenêtre de navigateur, mais le code Python ne reçoit jamais les résultats de recherche à afficher (ou manipuler autrement). – Mogsdad
Essayez ceci, il est très simple à utiliser: https://pypi.python.org/pypi/google
Docs: https://breakingcode.wordpress.com/2010/06/29/google-search-python/
Github: https://github.com/MarioVilas/google
Installez ce paquet python et l'utilisation est aussi simple comme ceci:
# Get the first 5 hits for "google 1.9.1 python" in Google Pakistan
from google import search
for url in search('google 1.9.1 python', tld='com.pk', lang='es', stop=5):
print(url)
http://www.geeksforgeeks.org/performing-google-search-using-python-code/ – JerryGoyal
les opérations suivantes:
import webbrowser
lib = input()
url = "https://www.google.co.in/search?q=" +(str(lib))+ "&oq="+(str(lib))+"&gs_l=serp.12..0i71l8.0.0.0.6391.0.0.0.0.0.0.0.0..0.0....0...1c..64.serp..0.0.0.UiQhpfaBsuU"
webbrowser.open_new(url)
Ceci ne répond pas à la question de l'OP. Il ouvre simplement la page dans une fenêtre de navigateur (même si OP a demandé un script python) et il n'imprime pas les résultats (liens). – ands
Je l'ai utilisé API SERP pour y parvenir.
Les instructions sont assez simples:
pip install google-search-results
et l'utilisation est:
from lib.google_search_results import GoogleSearchResults
query = GoogleSearchResults({"q": "coffee"})
json_results = query.get_json()
Plus utilisations avancées sont sur Github.
- 1. Recherche Google avec Python
- 2. oauth google en utilisant python
- 3. Recherche d'un fichier Unicode en utilisant Python
- 4. Script en C# (python)
- 5. Recherche d'un hôte avec adresse MAC en utilisant Python
- 6. Recherche sur le Web en utilisant pdf
- 7. Google aime la recherche en utilisant DevExpress LookUpEdit
- 8. en utilisant google jQuery api
- 9. Intégrer le script Python
- 10. Comment scripter une recherche google sans clé de licence google?
- 11. en utilisant des variables dans le profil de recherche dans le script awk
- 12. Recherche de chaîne dans mysqltable en utilisant python
- 13. recherche d'expression régulière en python
- 14. Stocker des images dans google datastore en utilisant Flask (Python)
- 15. Recherche de chaîne HTML spécifique en utilisant Python
- 16. requête sortante FTP de Google AppEngine en utilisant python
- 17. Oauth pour l'exemple de l'API Google en utilisant Python/Django
- 18. Recherche du nième nombre premier en utilisant Python
- 19. recherche python remplacer en utilisant des caractères génériques
- 20. Comment distribuer un script en utilisant gdata-python-client?
- 21. en utilisant scp dans un script python sur opensolaris
- 22. Résultats de la recherche Google
- 23. Recherche de '\' en utilisant javascript
- 24. en utilisant href dans le script jquery
- 25. Construire l'apk en utilisant le script ant.
- 26. en utilisant OR dans le script shell
- 27. en utilisant le format 'variable.xyz' en Python
- 28. paramètres d'un fichier Obtenir via le script shell en script python dans le format
- 29. Requête de recherche similaire à Google en utilisant la recherche de texte intégral dans SQL Server
- 30. Retour uniquement Nombre de résultats de recherche Google via Python
Je suis sûr que quelqu'un peut. Qu'avez-vous écrit jusqu'ici? – jball
Ou comment basique de l'aide cherchez-vous? [Débutants] (http://stackoverflow.com/questions/207701/python-tutorial-for-total-beginners)? Premiers pas avec [web scraping] (http: // stackoverflow.com/questions/2081586/web-scraping-avec-python)? – jball
@ jball Je n'ai pas encore codé. Je suis nouveau à python. J'ai appris la structure de base du codage en python. Donc, pour mettre en œuvre la recherche google pouvez-vous me suggérer par où commencer. quel genre de modules utiliser? – sudh