Может ли кто-нибудь помочь мне в написании скрипта python, который ищет google и выводит ссылки на лучшие результаты.Поиск в Google с использованием сценария python
ответ
Возможно, что-то вроде этого?
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)
Прочитайте документацию http://docs.python.org/
Это дает только пять результатов? – user567879
Этот api больше не доступен. Нам нужно использовать https://developers.google.com/custom-search/ –
это лучше предложено использовать Google APIs , но очень некрасиво версия .. (альтернатива использовать Google API) вы можете фильтровать содержимое, если вы хотите
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
он будет печатать точно, что браузер должен отображать при поиске чего-либо на google
для «lynx -dump» – mt3
Обычно я получаю хорошие результаты с помощью 're' (модуль регулярных выражений) для« дампа »исходного кода страницы. На всякий случай использование Linux недоступно; o) – heltonbiker
Существует еще одна классная библиотека, называемая xgoogle. Вы можете использовать это в случае. Вот ссылка 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()
Чувак, который вы только что скопировали и вставляли, что из pygoogle, который больше не работает fyi. Вы также указали нулевое объяснение. – reticentroot
Как @Zloy Smiertniy отметил, что ответ может быть найден here.
Однако, если вы используете Python 3, синтаксис raw_input
, urllib
изменился, и нужно декодировать response
. Таким образом, для Python 3 можно использовать:
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)
В python3 я получаю эту ошибку: объект «module» не имеет атрибута «parse» –
Хм ... странно. Он должен быть указан в соответствии с https://docs.python.org/3/library/urllib.html. Я заметил, что после перезапуска скрипта мне пришлось добавить 'import urllib.request' (теперь в обновленном ответе), поэтому, возможно,« import urllib.parse »может помочь в вашем случае. Также обратите внимание, что после перезапуска скрипта у меня возникли проблемы с получением результата для 'response', поэтому' url', возможно, изменился с тех пор, как я использовал скрипт в прошлый раз. Удачи –
Этот API больше не доступен, альтернативой является [google-custom-search] (https://developers.google.com/custom-search/). – ands
Я новичок в Python. Просто моя простая идея для поиска в 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)
Это фактически не делает то, что было задано; он выполняет поиск Google, открывая окно браузера, но код Python никогда не получает результаты поиска для отображения (или иным образом манипулирует). – Mogsdad
Попробуйте это, его очень проста в использовании: https://pypi.python.org/pypi/google
Docs: https://breakingcode.wordpress.com/2010/06/29/google-search-python/
Github: https://github.com/MarioVilas/google
Установите этот пакет питона и использование как простой как это:
# 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
Попробуйте следующее:
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)
Это не отвечает на вопрос OP. Он просто открывает страницу в окне браузера (хотя OP запросил сценарий python), и он не распечатывает результаты (ссылки). – ands
Я использовал SERP API для достижения этой цели.
инструкции довольно просты:
pip install google-search-results
и использование является:
from lib.google_search_results import GoogleSearchResults
query = GoogleSearchResults({"q": "coffee"})
json_results = query.get_json()
Более продвинутые виды использования на Github.
- 1. Поиск в Google с помощью Python
- 2. Линейный поиск с использованием сценария кофе
- 3. Программный поиск Google в Python с использованием пользовательского поиска
- 4. Извлечение содержимого пакета с использованием сценария Python
- 5. Поиск jpeg-файлов с использованием python
- 6. Python Поиск Google
- 7. Бинарный поиск с использованием Python
- 8. Поиск Google - Python
- 9. редактирование двоичного файла с использованием сценария python
- 10. Управление терминалом с использованием сценария Python
- 11. Выполнение командного файла с использованием сценария Python
- 12. Открытие портов localhost с использованием сценария python
- 13. Удаленное выполнение сценария оболочки с использованием python
- 14. Поиск текста в PDF с использованием Python?
- 15. Поиск строк в mysqltable с использованием python
- 16. Поиск подстроки в GAE с использованием python?
- 17. Поиск в файлах Python с использованием Webstorm
- 18. Поиск файла в Юникоде с использованием Python
- 19. Поиск слова в файле с использованием python
- 20. Поиск SC_PAGE_SIZE с использованием Python в Windows
- 21. поиск в сети с использованием python 3.5
- 22. Поиск идентификатора пакета в проекте XCode с использованием сценария оболочки
- 23. Поиск сценария огурца в файле с использованием ruby
- 24. Поиск текстового файла в Unix с использованием сценария оболочки
- 25. Python - Дублирующий поиск файлов с использованием defaultdict
- 26. Поиск по Youtube с использованием API Google
- 27. Google, как поиск с использованием DevExpress LookUpEdit
- 28. Таблица Google Поиск с использованием javascript
- 29. python поиск с изображением google images
- 30. Google api поиск изображений с помощью python
Я уверен, что кто-то может. Что вы написали до сих пор? – jball
Или как базовую помощь вы ищете? [Начинающий] (http://stackoverflow.com/questions/207701/python-tutorial-for-total-beginners)? Начало работы с [web scraping] (http: // stackoverflow.ком/вопросы/2081586/веб-соскоб-с-питон)? – jball
@ jball i havent еще закодирован. Я новичок в python. Я изучил основную структуру кодирования в python. Поэтому, чтобы внедрить google-поиск, вы можете предложить мне, с чего начать. какие модули использовать? – sudh