В поисках вдохновения в творениях небезызвестного конкурса для веб-разработчиков 10k.aneventapart.com/ впервые затронутого автором в прошлой статье, было замечено такое вот незамысловатое приложение. Краткий смысл, – по трейлеру фильма определить его год выпуска. Идея простая, интересная и отталкиваясь от неё можно придумать еще по крайне мере одно простенькое игровое приложение. Вам хочется подробностей и/или вы невнимательно прочли заголовок статьи? – Тогда, добро пожаловать под кат.
По трейлеру фильма позволительно угадывать различные вещи – режиссёра, год выпуска, полное название произведения и др. Именно об угадывании названия фильма по его трейлеру пойдет речь в этой статье. Как правило, название фильма в самом начале трейлера не фигурирует, что создает предпосылки к правильному функционированию нашего приложения. Чтобы упростить пользователю жизнь, не будем его заставлять вводить какие-либо данные в текстовую форму вручную – пусть выбирает правильный ответ, например из трёх вариантов.
Как это работает?
Гениальность конкурса 10k.aneventapart.com/ в том, что приложение, претендующее на победу, должно быть небольшим и функциональным одновременно, иначе у него нет шансов. Одним из решений данного противоречия является использование различных API, чем убивается сразу несколько зайцев – отсутствие хранения больших массивов данных внутри клиентского приложения и расширение функционала путем только лишь внешних запросов. Приложение, взятое за основу для нашего сервиса, именно так и работает. Будем следовать его примеру.
Для начала генерируется случайное число (год) в задаваемых в скрипте пределах (например, от 1950 до 2011 года). Затем этот год подставляется в запрос к сервису query.yahooapis.com, который, в частности, позволяет парсить странички со списком названий фильмов привязанных к определенному году. В таком виде данные о фильмах хранятся например в Википедии. (Следует заметить, что такая система не гибкая и зависит от формата и HTML-разметки распарсиваемого ресурса. Такова плата за использование сторонних ресурсов для загрузки их данных в свои приложения.)
Найдя достаточное количество названий фильмов, выбираем из них одно случайное, соответствующее верному названию фильма и два сбивающих с толку. – Теперь можно искать соответствующий трейлер на Ютубе. Выводим полученную информацию пользователю.
Предупреждение о возможных недостатках – приложение экспериментальное и изысканным дизайном не отличается, отгадывание по русским трейлерам также оставляет желать лучшего из-за сравнительно небольшого количества русских трейлеров вообще и на Ютубе в частности. Особенно это заметно для старых фильмов.
Если кому-то понадобятся исходники javascript-а не в сжатом виде, – по требованию в комментариях или в личку, предоставлю код “в студию”.
Угадай фильм!
Автор: denldv