Отображение рейтинга фильма с Кинопоиск.ру на вашем сайте

Примерно год назад я запустил на сайте pro-kino.com «API рейтингов Кинопоиск.ру и IMDB.com«, суть была в том, чтобы отобразить на своем сайте рейтинг фильма в виде картинки. Сегодня я расскажу, как отображать всегда актуальную оценку и количество голосов в виде текста.

Это стало возможным благодаря тому, что по просьбе многих людей, Кинопоиск все-таки сделал небольшое XML API для экспорта рейтинга. Запрос выглядит следующим образом http://www.kinopoisk.ru/rating/89515.xml где 89515 — ID фильма. Именно из этого файла мы получим, с помощью SimpleXML, актуальную оценку и количество проголосовавших пользователей.

SimpleXML предоставляет очень простой в восприятии, интуитивно-понятный доступ к XML-документам, позволяющий совершать разнообразные операции с элементами XML-документа и их атрибутами.

Думаю имеет смысл рассмотреть сразу интеграцию в WordPress, тем более если вы пользовались моим первым информером у вас произвольные поля должны быть заполнены IDшниками фильмов с Кинопоиска.

Собственно сам код:

Тут все просто, произвольное поле у вас должно иметь имя kpid, а значение — ID фильма с Кинопоиск.ру, если поле пустое, вы увидите соответствующий текст.

Если у вас есть какие-то вопросы или предложения по этому поводу, то давайте обсудим в комментариях =)

Отображение рейтинга фильма с Кинопоиск.ру на вашем сайте: 31 комментарий

  1. 2Слава Возникли проблемы с кинопоиском, поэтому графические информеры временно не работают.

    2Владимир Способ описанный в посте, работает. Код нужно вставлять в цикл, обычно single.php или index.php — в то место, где хотите вывести оценку.

  2. Хорошо. А если не использовать плагин SimpleXML — то какими средствами еще можно выйти из ситуации? (Не люблю плагины — лучше функцией в шаблон или хаком)

  3. И правда. Спасибо за информацию — весь интернет перерыл в поиске добавления рейтинга с кинопоиска — но только у вас нашел человеческий способ.

    А api imdb сайта позволяет такое?

  4. Прошу прощения за долгий ответ, на сколько я знаю, у imdb нет открытого api, но есть сервисы, которые предоставляют их данные путем парсинга страниц. Например скрпт PHP imdb Classes (http://sourceforge.net/projects/imdbphp/) предоставляет почти все данные о фильме с imdb, оттуда рейтинг можно выдернуть, имея небольшие знания в PHP.

    P.S.: Сайт с документацией и примерами IMDBPHP тут http://projects.izzysoft.de/trac/imdbphp

  5. Кинопоиск добавил в свой xml и рейтинг IMDB. Радуемся)
    Ниже обновленный код, как адаптировать к WordPress думаю разберетесь.

    Выведет оценку и количество голосов, как Кинопоиска, так и IMDB.

  6. serg2001, выпросили таки 🙂
    Написал для вас, и тех, кто не может по каким-либо причинам использовать PHP.
    Для того чтобы добавить рейтинг на блог (Blogspot.com), вам нужно вставить код:

    Где 403986 соответственно ID фильма на кинопоиске.
    Пример тут: http://stsepelev.blogspot.com/2010/07/blog-post.html
    Над внешним видом не работал, если, что-то нужно поправить, скажите.

  7. ВАУ!!! супер!!!!!!! уверен код расползется как вирус по всему интернету!!!

    Ау……..
    «Над внешним видом не работал, если, что-то нужно поправить, скажите.»
    было бы конечно не плохо над внешним видом…. а то сами посмотрите на как то не очень смотрится…, по возможности….
    http://serg2001.blogspot.com/2010/07/serial-gilmore-girls-devochki-gilmor.html

    что-нибудь в стиле кинопоиска…

  8. Вот это просто праздник какой-то! 🙂 Спасибо. Но заметил одну особенность — невозможно эти значения собрать в рейтинг общий. Что я имею ввиду — я опубликовал фильм и при просмотре вывожу в описании к фильму «Рейтинг кинопоиска 7.2» — просто текстом. Пытаясь в поиске найти «Рейтинг кинопоиска 7.» — чтобы он вывел мне все фильмы с рейтингом 7 — не дает результатов. потому что только при просмотре он этот xml файл загружает. Как бы выйти из этого? Чтоб при просмотре он этот рейтинг забивал в таблицу, а потом брал оттуда и перезаписывал каждый раз при просмотре? php к сожалению только осваиваю.

  9. всегда пожалуйста… 🙂
    считаю да, «Рейтинг….» надо убрать/
    и было бы не плохо в пихнуть в размеры кнопки кинопоиска 102×38
    и убрать рейтинг кинопоиска или сделать равными надписи по размеру (если такое возможно)

  10. а вот это возможно?
    «и было бы не плохо в пихнуть в размеры кнопки кинопоиска 102×38
    и убрать рейтинг кинопоиска или сделать равными надписи по размеру»

  11. У меня сразу не получилось применить названное дополнение для сайта imdb — и помучавшись все же решил задачу. Поэтому для всех кому сложно — мое оформление для wordpress:

    Это размещаем в файле single.php. Как видно коды для кинопоиска и imdb я разместил в таблице. Теперь они будут располагаться не друг над другом а рядом. ну и оформление стиля:

    — это располагается в style.css
    Пример:
    nn1

  12. С сегодняшнего вечера не работает функция. Выводит ошибку. Кинопоиск снова что-то намудрил (я вам отправил письмо — т.к. форум сообщение ошибки не дал вставить)

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

    С комментами в блоге разберусь, а то многие жалуются, что не отправляются(((

  14. Уж больно хочется автоматизировать одну задачу, связанную с
    поиском фильма по названию. Киньте, пожалуйста, ссылку, где можно
    почитать документацию по всему API, что есть, а то я весь вечер
    гугл пытаю и максимум, что нашёл — эта статья.

  15. Сергей Цепелев, установите в отображении фрейма без бордюра frameborder=»0″ и прозрачный фон allowTransparency,ато всю картину портит.За фрейм спасибо,отлично работает.

  16. Всем привет, пожалуста напишите скрипт для DLE и чтобы не картинкой был а текстом или подскажите как

  17. На локальном сайте я решил проблему когда сайт Кинопоиск недоступен (пока еще не внедрил в рабочий сайт).
    Всё оказалось просто — я при загрузке своего сайта, на странице фильма просто добавил кнопку «Посмотреть рейтинг». — обычный стилизованный Div, и по клику на него jquery делает ajax запрос к файлу с кодом рейтинга.

    Костыль, понимаю, т.к. при недоступности кинопоиска обработчик вернет ошибку, но страницы грузятся быстро. И проблема видна только если совпадают уже 2 фактора — пользователь нажал на кнопку рейтинга, и Кинопоиск в этот момент не был доступен.

    Но в любом случае, пользователь всегда будет видеть быстро загружающуюся страницу

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *