Как сделать умный поиск на питоне?

Рейтинг: -3Ответов: 2Опубликовано: 03.07.2023

Что я имею ввиду: я хочу сделать на питоне такой поиск как в Google или Pycharm например, то есть я начинаю вводить что либо в консоль и оно мне предлагает варианты, только нужно чтобы всё это было в реальном времени. Может есть какие-нибудь библиотеки для этих целей? А то я перерыл весь интернет и ничего полезного не нашёл. Не прошу готовый код, а просто спрашиваю как это можно реализовать, сделаю я сам, прошу просто направить. Изменено: Мне нужно эта связка: питон+бд+консоль. Я хочу на питоне написать код, который обращается к БД и выводит автоподсказки в консоль

Ответы

▲ 0Принят

Не знаю, друг, почему этот вопрос задизлайкали. Как по мне, так нормальный вопрос. Как здесь пишут - "Он понятен, несет пользу и отражает желание разобраться". Я сейчас для своего проекта похожее делаю, поэтому для меня он уж точно полезен.

Вот что я нашел по этому поводу, отличная переведённая на русский язык статья на Хабре о том как создать полнотекстовую поисковую машину на питоне: https://habr.com/ru/companies/skillfactory/articles/551000/

▲ 0

Это должно помочь, но есть ежедневные лимиты

import requests

#API ключ можно получить здесь: https://developers.google.com/custom-search/v1/overview?hl=ru#api_key
api_key = 'AIzaSyDhj2237ItjwTn9vOfgXn6rf-TrdDqEtJ4'

#cx код можно получить здесь: https://programmablesearchengine.google.com/controlpanel/all?hl=ru
#А если у вас нет поисковой системы то добавтьте и войдите в параметри поисковой системы и скопируйте идентификатор поисковой системы
#Можно вместо cx кода использовать "017576662512468239146:omuauf_lfve" но результаты могут выдавать странные сайты
cx = '017576662512468239146:omuauf_lfve'

r = requests.get(f"https://www.googleapis.com/customsearch/v1?key={api_key}&cx={cx}&q=Google")
print(r.json())

while True:
  a = input("Введите ваш запрос: ")
  r = requests.get(
    f"https://www.googleapis.com/customsearch/v1?key={api_key}&cx={cx}&q={a}")
  try:
    for i in range(r.json()['queries']['request'][0]['count']):
      print(r.json()['items'][i]['title'])
      print(r.json()['items'][i]['link'])
  except KeyError:
    print("Неправильный запрос или у вас закнчились ежедневные лимиты")