Как найти фильм по номеру в Телеграмме

Use saved searches to filter your results more quickly

Cancel Create saved search

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window.

Reload to refresh your session.

Телеграм бот для поиска фильмов

danfimov/cinemabot

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags

Nothing to show

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Cancel Create

  • Local
  • Codespaces

HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.

Как найти фильм, если не знаешь его название?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Еще по теме:  Не отправляются сообщения в Телеграмме восклицательный знак на Айфоне

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

0adca4d Jun 17, 2023

* Delete empty line with autoformatting * Replace flake8 and isort with ruff * Fix python version in Github workflow

Git stats

Files

Failed to load latest commit information.

Latest commit message
Commit time

README.md

Cinemabot

Проект бота, предназначенного для поиска фильмов по названию.

Available bot commands

/start

Базовая команда. Не делает примерно ничего, кроме вывода подсказки о командах для поиска и справки. Под капотом еще и сохраняет id пользователя в нашу базу для дальнейшего использования.

/find название фильма

Выполняет поиска фильма по ключевому слову/словам. Отдает пользователю описание фильма + название. Дальше доступны три опции:

  • Если фильм не тот — можно продолжить поиск и пролистывать фильмы, пока они не закончатся в поисковой выдаче.
  • Если фильм тот — можно посмотреть более подробное описание и получить ссылку на Кинопоиск.
  • Устали — отдохните. Или просто закончите поиск.

Для получения информации о фильме, бот умеет ходить в неофициальное API Кинопоиска, и доставать оттуда интересующую информацию.

/history

Забирает из базы историю запросов пользователя. Выводит на экран в виде списка фильмов с датами поиска в скобках. Если история длинная — она разбивается на страницы по 10 записей.

Может показывать дубли — не баг, а фича — когда пользователь, например, дважды искал одно и тоже.

/stats

Забирает из базы статистику о том, сколько раз мы показывали пользователю тот или иной фильм, и выводит эту информацию пользователю. Фильмы в списке упорядочены по количеству показов (по убыванию). Если статистика длинная — она разбивается на страницы по 10 записей.

/help

Выводит список всех команд с кратким описанием их работы для пользователя.

Tech details

В качестве хранилищ информации использовал две базы данных:

  • Postgres — статистика показов фильмов, история поиска;
  • Redis — кэш, state пользователя.
  • aiogram — библиотечка для работы с ботами в Telegram. Сделал туда пару PR-ов в процессе, надеюсь, примут;
  • sqlalchemy — ORM для работы с базой;
  • aiohttp — для походов в стороннее API за информацией;
  • alembic — управление миграциями;
  • pydantic — работа с настройками приложения, которые могут использовать env-переменные;
  • cashews — асинхронный кэш, который умеет работать с Redis.
Еще по теме:  Как отключить геолокацию в Телеграмме на Айфоне

В качестве источника данных о фильмах взял неофициальное API Кинопоиска.

Deploy details

Деплоил в Yandex Cloud:

  • в качестве менеджера зависимостей использовал poetry;
  • создал сеть и виртуальную машину с Ubuntu;
  • склонировал туда код из своего репозитория;
  • используя tmux, зашел по ssh на машинку для поднятия баз через docker compose и запуска самого приложения;

Run locally

Склонируйте код проекта

git clone https://gitlab.manytask.org/python/students-fall-2022/danfimov.git

Перейдите в директорию с проектом

cd 13.3.HW3/cinemabot

Установите Poetry. Подробнее об установке можно почитать в официальной документации Poetry.

curl -sSL https://install.python-poetry.org | python3 —
poetry install

Создайте файл .env с необходимыми переменными для работы бота и базы данных

# Env variables example BOT_TOKEN=»» # from BotFather KINOPOISK_API_KEY=»» # from kinopoiskapiunofficial.tech/ POSTGRES_USER=»cinemabot_admin» POSTGRES_PASSWORD=»password» POSTGRES_DB=»cinemabot_db»

Запустите базу данных с помощью docker-compose

make db

Запустите миграции, чтобы создать в базе необходимые сущности

make migrate
make run

Roadmap

  • Поддержка стандартного flow: поиск фильма — далее/подробнее/стоп, история поиска и статистика показов фильмов;
  • Внедрение alembic для комфортной работы с изменениями в базе данных;
  • Замена MemoryStorage на Redis;
  • Базовый деплой бота в Yandex Cloud (VM c открытой с помощью tmux сессией);
  • Кэширование результатов запросов в API, чтобы не перегружать его;
  • Деплой здорового человека через CI с предварительной проверкой тестами и линтерами, сборкой Docker-образов и автоматической выкаткой;
  • Ориентирование на язык пользователя: поддержка вывода описания на русском или английском языках в зависимости от языка в приложении;
  • Добавление дополнительных источников информации о фильмах помимо неофициального API Кинопоиска;
  • Настройка полей в выдаче поиска для каждого пользователя через хранение информации в State;

About

Телеграм бот для поиска фильмов

Источник: github.com

Как выложить фильм в Телеграм?

В мессенджере нет ограничений на максимальное количество загружаемых файлов, есть только лимит на их размер — не больше 1,5 ГБ на файл. The Outline указывает, что двухчасовой фильм, сжатый с помощью кодека HEVC (H. 265) с битрейтом от 400 КБ/сек до 2 МБ/сек, весит меньше 1,5 ГБ.

Как поставить видео в Телеграм?

В настройках профиля открываем редактор аватара: Выбираем заранее загруженный/созданный видеофайл. В следующем окошке будет предложено выбрать фрагмент видео длиной до 10 секунд. Кроме того, нужно выбрать кадр-обложку для пользователей, которые не смогут насладиться вашим видео-аватаром.

Еще по теме:  Как в Телеграмме зарегистрировать 2 номер телефона

Как загрузить большой файл в Телеграм?

  1. Откройте требуемый диалог.
  2. Нажмите на скрепку (слева от окна набора сообщения).
  3. Выберите тип (для отправки картинки «фото», для всего остального ― «файл»).
  4. Найдите требуемые данные в своей файловой системе.
  5. Нажмите на «Открыть».

Как в телеграмме смотреть кино?

  1. Откройте тематическую группу, которую вы нашли ранее.
  2. Выберите фильм или сериал из того, предлагается в ленте. .
  3. Нажмите на “Смотреть фильм”.

Как найти группы в телеграмме на телефоне?

  1. Откройте мессенджер и нажмите на значок лупы в правом верхнем углу;
  2. Введите название паблика или его username;
  3. Выберите из поисковой выдачи нужное сообщество и нажмите на него;
  4. Вы попадёте в чат паблика, где сможете просмотреть новости и подписаться на них.

Как поставить GIF на аватарку?

  1. Найти на стене нужную картинку.
  2. Навести на неё курсор мыши.
  3. Кликнуть кнопку запускающий повторение динамической картинки.

Как сделать пост в Телеграм с ссылкой?

  1. Откройте диалог с ботом.
  2. Перейдите в «Настройки».
  3. Проверьте, чтобы тип форматирования был «Markdown».
  4. Вернитесь назад и откройте «Свободный режим».
  5. Оформите пост, чтобы сделать там гиперссылку, используйте тег: [ТЕКСТ](ГИПЕРССЫЛКА) без пробелов.

Как отправить в Телеграм файл больше 2 ГБ?

Инструкция как прикреплять большие файлы к сообщениям:

В поле сообщения кликните по иконке со скрепкой. В открывшемся окне найдите и выделите нужный файл, чтобы прикрепить его (размер до 1.5 гб). Кликните по кнопке Отправить. Если нужно, сопроводите файл каким-либо комментарием или оставьте поле пустым.

Как загрузить файл в телеграмм?

  1. Открываем диалог с пользователем, которому собираетесь отправить файл.
  2. Кликаем на изображение скрепки, расположенной слева.
  3. Для картинок выбираем тип «фото», для всех остальных файлов – «файл».
  4. Находим в своей файловой системе интересующий документ.
  5. Жмем «Открыть».

Какой размер видео можно загрузить в Телеграм?

С 2014 года Telegram позволяет отправлять любые файлы размером до 1,5 гигабайт. С сегодняшнего дня возможностей стало ещё больше — теперь максимальный размер каждого файла составляет целых 2 гигабайта.

Источник: fortune-project.ru

Рейтинг
( Пока оценок нет )
Загрузка ...