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

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

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

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

Как выглядит

Иллюстрация

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

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


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

Иллюстрация

Внимание! Парсинг для больших городов может идти больше 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 9 лет назад #
+ для 1 ветки не планируется?
0
Def Def 9 лет назад #
для первой ветки было бы хорошо парсер вставить в афишу , instantposter
+1
Zau4man Zau4man 9 лет назад #
Для первой ветки не планируется. Мне интересно устройство только 2й ветки.
0
DeeMon DeeMon 9 лет назад #
Печально... Ибо 1-ую ветку больше используют...
0
Kreator Kreator 9 лет назад #
Отличная вещь! Плюс!

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

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

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

Еще от автора

Готовый сайт лендинг компании по подбору персонала
Делал два года назад. Заказчик сменил профиль и сайт не пригодился.
Выведем контент группы в списке полей группы
Поле позволяет в списке полей группы вывести последний контент этой группы.
Чиним реферальные ссылки биллинга при закрытом сайте
Проблема такая: если сайт закрыт, то при переходе по реферальной ссылке типа /r/1 пользователя перехватывает компонент Авторизация, и хук биллинга, ко
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.