Неофициальный поисковый бот Google для Telegram
Бот Telegram (поддерживает как встроенные сообщения, так и чат), который возвращает результаты поиска (веб/изображения) от Google.
Как использовать
Настоятельно рекомендуется разместить свой собственный хостинг, поскольку Google наложил на свой API ограничение в 100 поисковых запросов в день, если вы не начнете платить. Как независимый разработчик, я не могу себе этого позволить. В настоящее время вы можете протестировать бота по адресу [https://telegram.me/GoogleSearchUnofficialBot], но он предназначен только для ознакомительных целей из-за ограниченной доступной квоты. Извините, но так должно быть
Запустить инструкцию
git clone https://github.com/nkming2/google-search-telegram-bot
cd google-search-telegram-bot
pip install -e .
PYTHONPATH=src python3 src/app/__init__.py
Возможно, вы захотите сделать это в среде venv.
После их настройки вам нужно будет ввести ключи API в config.json.
Хостинг на pythonanywhere
Один из простых вариантов бесплатного размещения бота — это PAW. В вашей веб-консоли вам следует установить исходный каталог на src и изменить файл конфигурации WSGI на основе примера, приведенного в этом репозитории (misc/pythonanywhere_com_wsgi.py).
config.json
Этот файл содержит константы, такие как ключи API, которые следует хранить вне репозитория. config.json должен представлять собой текстовый файл с действительным сериализованным JSON. Обязательно должны присутствовать следующие поля:
- telegram_bot_token
- Ваш токен Telegram-бота. Вам необходимо получить его через @BotFather, следуя инструкциям, изложенным на https://core.telegram.org/bots.
- google_api_key
- Ваш ключ API Google, используемый для аутентификации API пользовательского поиска. Вам необходимо получить его с помощью инструмента установки здесь: https://console.developers.google.com/start/api?id=customsearch&credential=client_key.
- search_engine_id
- Ваш идентификатор поисковой системы. Создайте новый движок на странице https://cse.google.com/cse/all. При создании новой системы введите случайный сайт в поле «Сайты для поиска». После создания нажмите «Изменить», затем измените «Искать только на включенных сайтах» на «Искать по всей сети» и удалите только что добавленный случайный сайт.
- разрешить_only_users
- Вы можете ограничить круг лиц, которые могут использовать размещенного у вас бота. Вы можете внести пользователя в белый список по идентификатору или имени пользователя. Пример: [999999,"fancy_user"] позволит двум пользователям использовать вашего размещенного бота. Пустой список позволит всем
- paw_app
- Полезно только при хостинге на PAW (более подробную информацию см. в разделе Хостинг на pythonanywhere).
- URL
- URL-адрес вашего веб-приложения
- webhook_secret
- Любая строка должна быть допустимым символом URL.
Зависимость
- Python 3 (разработан и протестирован на версии 3.5)
- Телепот (https://github.com/nickoala/telepot)