Компонент Афиша кино версия 0.5 бета

+30
3.11K
Добрый вечер. Продолжаю осваивать двоечку, парсинг. Иду мелкими шажками к мечте "создать портал своими руками" :)
Предлагаю вашему вниманию компонент "Афиша кино".

Что он делает?

Парсит афишу кино кинопоиска, сохраняет в базу и выводит у вас на сайте по дням.

Как выглядит

Иллюстрация

Если кто-то желает пощупать, демо тут

Группе, к которой вы принадлежите, запрещено просматривать этот скрытый текст


Над дизайном пока не заморачивался, каждый может поправить под себя.
Есть задача в планировщике, выполняется раз в сутки (можно и чаще).

Иллюстрация

Внимание! Парсинг для больших городов может идти больше 30 секунд, которые обычно выделяются на недорогих шаред хостингах. Тут я помочь не в силах.
Настроек пока немного, только код города.

Иллюстрация

Где его взять?

Идем на сайт кинопоиска, в раздел Афиша кинотеатров www.kinopoisk.ru/afisha/new/
Выбираем нужный город, страница обновится, браузер запишет вам куку с именем tc. Вот ее значение и нужно указать в настройках. Например, для города Нижний Тагил значение куки 3000.

Иллюстрация

Почему версия 0.5 бета? Потому что слишком малый функционал. Но компонент полностью готовый к употреблению.

Что в планах?

— человеческие даты с днями недели
— парсинг описания фильмов, а не только их названий
— убрать дубли (страница сегодня доступна по 2 адресам)
— возможность в админке настраивать ссылки для кинотеатров (например, ведущие на ваш раздел справочника)

Как устанавливать?

1. Через пакет-инсталлятор, как обычно.
2. После установки выполните вручную задачу в планировщике, чтобы афиша спарсилась в базу.
3. Добавить в меню ссылку с адресом kino

Убедитесь, что на вашем хостинге работает curl, safe_mode отключен (иначе курл будет вываливать ошибки в админке при выполнении задачи) и установлен ionCube (это не обсуждается).

Скачать: instantcms.ru/users/files/download4802.html
Поблагодарить:
Кошелек рублевый вебмани R205453694129
Яндекс деньги 41001346743476

Компонент писался новичком, поэтому могут быть ошибки, недочеты. Пользуемся на свой страх и риск.
0
universe universe 10 лет назад #
+ для 1 ветки не планируется?
0
Def Def 10 лет назад #
для первой ветки было бы хорошо парсер вставить в афишу , instantposter
+1
Zau4man Zau4man 10 лет назад #
Для первой ветки не планируется. Мне интересно устройство только 2й ветки.
0
DeeMon DeeMon 10 лет назад #
Печально... Ибо 1-ую ветку больше используют...
0
Kreator Kreator 10 лет назад #
Отличная вещь! Плюс!

Не плохо было бы добавить:
- Возможность включать/отключать ссылку под списком, что все таки информация взята с кинопоиска
- Модуль вывода списка кинотеатров с телефонами выбранного города, чтобы дать пользователю рекомендацию, что лучше еще уточнить по телефону. (если конечно такие данные можно спарсить. Если нет - конечно набиль такой модуль вручную не долго)
0
Zau4man Zau4man 10 лет назад #
1. Не стоит. Судя по соглашению в кинопоиске, они не одобряют копирование, воспроизведение и бла-бла-бла...
2. Спарсить можно. Я пока просто не знаю как... Их в Москве, например, 60+ штук... Кинопоиск отдает страницу в среднем 3-4 секунды. Считаем :(
0
Kreator Kreator 10 лет назад #
Кстати вопрос, прошлые дни, которые уже не показываются удаляются из БД?
+1
Zau4man Zau4man 10 лет назад #
Каждый раз при запуске задачи в планировщике происходит очистка таблицы в базе данных.
На страницах дат, которых нет в базе будет выводиться "Данные афиши на выбранную дату отсутствуют."
Возможно, добавлю галочку выбора очистки базы.
0
platon platon 10 лет назад #
Великолепно!
0
Kreator Kreator 10 лет назад #
Кстати что сделать чтобы:
- Сделать несколько городов для парсинга. (или) Объясню зачем на примере: при выборе города Абакан - парсится только город абакан - хотя на самом кинопоиске мы видим что в списке сеансов так же видится (серым цветов) кинотеатр из ближнего города Минусинска, которй бы тоже хотелось добавить. Т.к. во многих случаев поехать 6-10 км в соседний город не проблема.
0
Zau4man Zau4man 10 лет назад #
Ничего не сделать. Парсинг из нескольких городов не планировался (до ближайшего города у нас далековато).
0
Kreator Kreator 10 лет назад #
А на странице кинопоиска же он выводится
0
Kreator Kreator 10 лет назад #
И если можно то в следующих версиях хотелось бы:

эти данные разделить для удобства настройки шаблона. Сейчас все в кучу
+1
Zau4man Zau4man 10 лет назад #
Да, над этим будет продолжена работа. Просто когда я сперва расписал все хотелки, понял, что не могу составить структуру базы. Начал с малого.
0
Kreator Kreator 10 лет назад #
+ дать возможность компоненту поиск искать в компоненте кино
0
Zau4man Zau4man 10 лет назад #
А вот это мне не совсем понятно. Что искать?

Афиша получается максимум на 7 дней, человек заходит с конкретной целью, узнать что идет сегодня-завтра-послезавтра. Когда будет добавлен парсинг фильмов, тогда да, возможно поиск и нужен. Но опять таки, человек 100% не будет искать описание фильма у вас на сайте через встроенный поиск, а кликнет по его названию в афише.
+3
SpaceSel SpaceSel 10 лет назад #
Было бы не плохо добавить возможно руками добавлять фильмы. Местного кинотеатра нетъ в кинопоиске.
0
Xamle Xamle 10 лет назад #
Да, вот это точно нужная вещь была бы.
0
Remi Remi 10 лет назад #
Жаль что нет нужного города, а так +!

Еще от автора

Шаблон вывода категорий
Делюсь небольшим компонентом, который выводит на списком записей список категорий со своим шаблоном.
Виджет "Меню добавить"
Небольшой виджет, предназначенный исключительно для вывода меню добавления контента.
ZПоиск. Другой взгляд на поиск
В рамках более глубокого знакомства с Vue в частности с появившимся недавно Composition Api сделал на Vue небольшой компонент, который по функционалу
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.