Skip to content

alpha-ver/Kinopoisk-API-Gem

 
 

КиноПоиск API (Gem)

Этот gem создан для упрощения работы с КиноПоиск API в проектах Ruby on Rails.

Гем основан официальном API от кинопоиска. Используется не официально, прикидываясь андройдом. Данный гем являеться форком проекта afuno/Kinopoisk-API-Gem, но т.к http://api.kinopoisk.cf/ не работает, то пришлось переделать для работы на прямую с кинопоиском.

Используется версия api 3.11.0 (планируется перевести на 5.0.0)

Установка

Добавьте эту строку в Gemfile вашего приложения:

gem 'KinopoiskAPI'

Затем выполните:

$ bundle

Использование

Глабальные функции

api = KinopoiskAPI::Class 
api.status 
#   > true  [Полученна следующая станица]
#   > false [Достигли конца пагинации]
#   Оригинальный хеш кинопоиска
api.data 
#   Оригинальный хеш кинопоиска (используется в некоторых классах для дополнительного запроса). 
#   Пример: __film.peoples_full__)
api.data2 
#   Статус парсинга json 
#   Boolean
api.status 
#   Статус парсинга json дополнительного запроса.
#   Boolean
api.status2

Исключения

При ошибке выбасывается исключение KinopoiskAPI::APIerror. Доступные методы.

# http код ответа
e.code
=> "404"
# Тело ответа
e.body
=> [key:false]

Классы

Фильм

film = KinopoiskAPI::Film.new(film_id)
#   Вся информация о фильме(включая rating, rent, budget).
film.view
# Рейтинги фильма и т.д.
film.rating
# Даты премьер и т.д.
film.rent
# Бюджет и сборы.
film.budget
# Люди связанные с фильмом(Не полный список, смотрите ниже).
film.peoples
# Люди связанные с фильмом(Полный список). Генерирует новый запрос к API.
film.peoples_full

Люди(Режисеры, актеры, операторы и т.д.).

people = KinopoiskAPI::People.new(people_id)
# Детальная информация о человеке.
people.view
# Фильмы связанные с конкретным человеком.
people.films
# Массив id фильмов связанных с конкретным человеком.
people.films_ids

Категории

category = KinopoiskAPI::Category.new
# Страны
category.countries
# Жанры
category.genres

Сегодня в кино

today = KinopoiskAPI::TodayFilms.new
#   Список фильмов
today.view
#   Массив id фильмов
today.film_ids

Глобальный поиск

search = KinopoiskAPI::GlobalSearch.new('Q')
#   Скорее всего вы искали этот фильм
search.exactly
#   Возможно, вы искали эти фильмы
search.maybe
#   Или даже этих людей
search.peoples

Поиск по фильмам

search = KinopoiskAPI::FilmSearch.new('Q')
#   Список фильмов (не более 20)
search.view
#   Колличество найденных фильмов
search.films_count
#   Текущая страница
search.current_page
#   Колличество страниц
search.page_count
#   Следующая страница
search.next_page
#   > true  [Полученна следующая станица]
#   > false [Достигли конца пагинации]

Поиск по людям

search = KinopoiskAPI::PeopleSearch.new('Q')
#   Список людей (не более 20)
search.view
#   Колличество найденных фильмов
search.peoples_count
#   Текущая страница
search.current_page
#   Колличество страниц
search.page_count
#   Следующая страница
search.next_page
#   > true  [Полученна следующая станица]
#   > false [Достигли конца пагинации]

Возвращаеммые данные

###Фильм

Баги

Дата

Иногда кинопоиск отдаёт неправильную дату релиза такого вида. "00.00.2005". соответсветно возникает эксепшен ArgumentError: invalid date. Если такое поризойдёт то дата будет сконвертированна "00.00.2005" -> "01.01.2005".


License

The gem is available as open source under the terms of the MIT License.

About

КиноПоиск API Gem [Переделка], текущая версия v0.9.0

Topics

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.txt

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 96.1%
  • Shell 3.9%