Чем я занимался последнюю неделю? Пилил, клеил, паял.
Доброго времени суток. Давно хотел заняться одним проектом. Около года назад пробовал себя в создании вывески из гибкого неона. К сожалению, руки у меня были недостаточно прямыми и пришлось заказывать через фирму. С того времени осталось достаточно гибкого неона. В этом месяце выделил достаточно времени и средств и наконец-таки нашел ему применение. Попробовал себя в изготовлении объемного постера. В дополнение к уже созданной вывески, выбор пал на мой любимый фильм. Хочу поделиться накопленным опытом и рассказать как я смог это все сваять
Процесс создания начал со сбора и закупки всего необходимого
Сама конструкция состоит из 4 частей: внешняя рама с оргстеклом, внутренняя маска с объемным изображением Арнольда, внутренняя рама с крепежом и задняя стенка с гибким неоном. После распечатки всех полотен в типографии начал делать объемное изображение.
Аккуратно по заготовленному контуру вырезал Т-800, отдельно вырезал правую руку с пистолетом, для придания объема использовал поролоновый уплотнитель (не учел, правда, объем до которого он высвободился), который в некоторых местах прокрасил акрилом. Отдельно добавил очки с вырезанной прослойкой (чтобы свет проходил от глаза). Пистолет с очками закрасил лаком для блеска. Все края закрасил черным маркером.
Дальше взялся за внутреннюю маску. Закрасил все вплотную акрилом в несколько слоев, чтобы исключить просветы. Оставил только линии света и глаз, где сзади будут проложены светодиодные ленты.
Задник с гибким неоном. Чтобы не вымерять все местоположения линий, просто наклеил на копию изображения. К сожалению, неон оказался настолько гибким, что мне не удалось его полностью выпрямить. Обклеил уплотнителем, где было возможно, чтобы исключить лишнюю засветку.
Проверка целостности системы, полет нормальный. В качестве источника питания пока буду использовать блок из четырех ААА-батареек. Потом заменю на аккумуляторные.
Соединил внешнюю и внутреннюю раму шурупами. В случае чего, так будет проще с доступом к внутрянке.
Все собрал в кучу, примерил на стене. Блок управления вынес наружу, чтобы был быстрый доступ. Спрячу, если будет мозолить глаза.
Включил, проверил как смотрится при включенном верхнем свете.
И в темноте. В качестве формата выбрал 40х40 см. Хотелось использовать 45Х45, но готовых рамок такого формата не нашел. Результат работы перед вами. В ближайшем будущем буду дополнять проект и исправлять неровности.
Привет, Джой! Недавно доделал свой новый короткометражный фильм. Хочется поделиться с вами и буду рад отзывам. Делаем киношки и клипы небольшой командой энтузиастов для души и на показ
(кстати, постоянного звукаря до сих пор нет, так что если у тебя есть желание присоединиться - пиши)
Данные с сайта с фильмами REZKA, украдены, отфильтрованы, завернуты в телеграм и поданы в виде 3 фильмов в день случайным образом, рейтинг фильмов немножко перевернут, так как между 9.8 и 9.9 разница по сути в 2 раза ссылка на результат https://t.me/django_watch
Часть 0
Не знаю что посмотреть, а рейтинг IMDB уже надоел
Часть 1 – обнаружение проблемы
Вы тоже замечали что кинокритики часто недооценивают фильмы?
К примеру «Святые из Бундока» -
Фильм в основном получил негативные отзывы от критиков, получил 44 балла из 100 на сайте Metacritic
Зато народу нравится, и таких примеров много – тысячи их
Короче есть в интернете такой сайт как HDrezka, годный сайт – много фильмов, своя студия озвучки, куча зеркал и регистрация в аргентинской бухте прямо таки стандарт среди пиратов
При посещении данного сайта, можно заметить один интересный феномен, его рейтинг фильмов очень точный, ибо:
- Его ставят люди которые действительно смотрят это кино
- Сайт резка не настолько популярен (как ротен томатос или метакритик) и крупным студиям и маркетологам и в голову не приходит – накручивать рейтинг на резке
- Сайт достаточно крупный (крупнейший из пиратских) что бы там было огромное количество фильмов (как выяснилось больше 30-ти тысяч)
- И самое главное – по этому рейтингу нельзя отсортировать фильмы что исключает внесение искажений
+ Не возможность отсортировать и самому выбрать действительно годные фильмы – что и стало причиной дальнейших действий
(дракон со златом охраняет рейтинг резки)
Часть 2 Как «стырить» данные?
И так навыки персонажа которому все это пришло в голову:
- Понимание школьной математики
- Программирование на уровне хобби, из языков знает немного знает Python (но без всяких сложных штук типа миксинов/дескрипторов)
Первым делом стал исследование какие технологии «воровства» данных изобрело человечество
После недолгих поисков было обнаружено 3 основные технологии
- Selenium (что то вроде эмулятора браузера)
- BeautifulSoup (легковесная библиотечка для работы с HTML – ты ей текст – а она тебе облегчает поиск всяких штук в этом тексте)
- Scrapy (целый фреймворк, хоть я до сих пор и не понимаю это слово, но это как большая библиотека, настолько большая что когда ней пользуешься ты ей даешь команды – а она создает целый проект с кучей файлов и папок, всякими настройками), по ходу именно такими технологии пользуются в промышленном программировании всякие компании
Короче после недолгих раздумий решил попробовать использовать Scrapy
От Selenium отказался ибо он используется для сложных сайтов типа amazon linkedin, а у нас тут сайт очень простой
Ну и BeautifulSoup решил использовать в случае если какие то куски странички будут слишком неудобно парсить с помощью Scrapy
И так, закатываем рукава, едем в бой:
Часть 3 – учим Scrapy и воруем
Первым делом находим видео с объяснениями как им пользоваться (желательно что бы объяснял Индус – у них каким то магическим образом все влезает в 5 минут видео)
Может тоже кому надо будет –
– четко объясняет и быстро
+ на Хинглише :)
И так после нескольких часов получилось накидать несложный код что тырит интересующие нас данные, используя удобный инструмент что нам подсказал человек из Индии
Далее становится интересной секция «комментарии» - ведь некоторые шедевры народного искусства явно стоят того что бы их прочесть
Почитав исходный HTML оказалось что в нем нет комментариев
Хмм, возник вопрос как так, после небольшого чтения мануалов, оказалось что данные иногда находятся не в самом коде страницы, а подгружаются «динамически» используя javascript
Мда, плохи дела подумал я, еще с джаваскриптом разбираться, а судя по мемам, ждет меня увлекательное приключение
Но не так страшен черт как его малюют
Оказалось что нужно лишь отследить куда именно идет запрос на очередную пачку комментариев
Оказалось что у браузеров есть супер крутые инструменты разработчика (сколько же всего придумало человечество)
Там нужно нажать на вкладку Networking, далее отключить кеш что бы запросы заново шли каждый раз а не доставались из памяти браузера
Потом вкладка XHR что расшифровывается как XMLHttpRequest – короче тут отслеживаются все запросы что делает страничка куда то
Далее нажимая на запрос – видим куда он делается :
А перейдя на вкладку Response можно увидеть что ответил сервер
После не долгого ковыряния в полученом ответе оказалось что это JSON специальный такой формат данных для общения между сервером и браузером
Если еще проще то это просто текст, слегка отформатированный что бы его компу было легче читать
Почитав еще оказалось что этим JSONом возращается HTML то есть не сам текст комментариев, а сразу целые странички с древовидной структурой
Чисто с эстетической точки зрения конечно как то странно выглядит, но чисто с практической работает же – да и сервер наверное не сильно грузит, так что все окей
Тут нам и пригодится вторая библиотечка – BeautifulSoup – мы ей скормим HTML достаный из JSON а она нам вернет комментарии
Так и произшло, никаких эксцесов не возникло (что удивительно)
Разве что пришлось почитать немного туториалов как этим всем пользоваться
После небольших настроек, с VPN через Японию, что бы не забанили наш основной IP с которого мы смотрим пиратские фильмы
А так же прикрутки модуля модуля к Scrapy что генерирует фейковые личности (юзер агенты) для каждого запроса
Далее запускаем процесс «воровства» и ждем
72 часа спустя, процесс завершается, мы счастливы!
На выходе получается файл
Если 1 байт это 1 символ – то достаточно много данных
Если человек может читать примерно 1000 символов в минуту, то все это на неделю где то на неделю беспрерывного чтения
Выглядит все это как то так
Часть 4 – присобачиваем интерфейс к этим всем данным
Логичным решением было использовать телеграм, так как он позволяет хранить фото/видео/текст не на локальном компьютере, как пришлось бы делать в случае с сайтом, а в собственном облаке, что очень удобно
+ не нужно покупать доменное имя (адресс сайта), а просто ник в телеге
+ не нужно платить провайдеру что бы он удерживал у меня белый IP – который не менялся бы каждый день, что бы специальная служба DNS (превращает имя сайта в IP и наоборот) работала корректно
+ не надо парится за безопасность (если кого это интересует) ибо перед тем как взломать условно мой бот, нужно сначала взломать телеграм, а это сложно
Имя канала решил выбрать в честь моего любимого персонажа – Джанго освобожденного, который спасал свою любимую из лап злодея
В загашнике валяется Raspberry PI 4
Это такой по сути полноценный компьютер на Linux с 4 Гб оперативки, разве что без вентилятора и не гудит, немножко греется когда что то сложное делает
Пишем небольшой бот, прикручиваем к нему базу данных что бы он как то аккуратно хранил список фильмов что уже запостил, а так же те которые планирует постить, немножко причесываем вывод информации
Охапку дров и бот готов :)
В общем кто дочитал до конца – СПАСИБО!
Хотелось с кем-то поделится!
Вот ссылка на канал, может быть вам тоже понравится, и сможете выбрать что посмотреть в свободное время
Продолжаю делать одного из любимых киношных киборгов. Получается долго, а делаю в свободное время, поэтому, чтобы не потерять интерес, делаю готовые отдельные части, сразу с текстурами и ригом. Сегодня это левая верхняя рука, с пулеметом и тараном. Сразу отмечу, что на вопрос, нафига полицейскому роботу пулемет таран, не смогу сказать больше, чем сказал Фил Типпетт, один из авторов:
Отличный комментарий!