Знакомая ситуация: видишь в ленте отличное видео, хочешь сохранить себе или скинуть другу в чат — а скачать его просто так нельзя. Остаётся отправить ссылку, которую друг откроет через неделю. С ВК, Rutube и инстаграмом та же история.
Я программист и давно делал бота для скачивания из Инстаграма. Теперь собрал нового, под площадки, которыми пользуемся мы: Пикабу, ВК, Rutube и остальные.
3. Через несколько секунд получаете видео или фото файлом, который можно сохранить или переслать
Можно проверить прямо сейчас: скопируйте ссылку на этот пост и отправьте боту — он пришлёт фото отсюда.
Что умеет:
— Пикабу: все видео и картинки из поста, в полном размере. Ролики с YouTube или ВК внутри поста тоже скачает
— ВК: видео и клипы
— Rutube: ролики и шортсы
— YouTube: видео и шортсы
— TikTok: видео
— Instagram: посты, рилсы и сторис
Без регистрации и без «подпишитесь на три канала спонсоров, чтобы продолжить».
Чего бот не умеет: закрытые аккаунты, плейлисты и каналы целиком, прямые эфиры.
Бот новый, баги наверняка есть. Если что-то не скачалось — кидайте ссылку в комментарии, я разберусь и починю. Какие сайты добавить следующими — тоже пишите.
Навайбкодил простые пазлы. Чтоб бесплатно, без рекламы, без внутренних продаж и слежки.
Скачать можно на компьютер или android. Код выложен на гитхаб. Можно играть, качать, дописывать.
Зачем? Ведь их и так много?
Именно. Их очень много. В этом-то и проблема.
Мама пожаловалась, что те пазлы, в которые она играла много лет, теперь не запускаются (спасибо Роскомнадзору за такой родительский контроль). Всё, что я пытался найти на замену, было либо платно, либо с мешающей рекламой.
Вот пример из топа выдачи в Play Market:
Вроде написано что "свободно" и "без рекламы", вообще Totally Free, но из комментариев становится понятно, что есть внутренние покупки и просмотр видеорекламы, за которые и "докупаешь" картинки. Вот такой вот Totally Free.
Желания копаться и искать действительно Totally Free не было.
Готов был купить платную, но опять же, мучиться с покупкой android-приложения российской картой МИР не хочется.
Значит вайбкод!
Запустил на компе локально нейронку — медленную, но рабочую. Дал её задание на ночь, а на следующий день после работы проверяешь результат и радуешься. Красота!
Маме программу уже установил. Играет. Говорит: "нормально".
Сложность
Над уровнем сложности долго не мучился и просто вынес его в "Настройки". Можно выбрать, на сколько кусочков дробить картинку (4 варианта на выбор).
Картинки
В игре уже около тысячи изображений на разные тематики. Все честно сгенерированы нейросетью, так что ничьи авторские права не нарушены.
Вся эта тысяча картинок занимает около 200 мегабайт.
В будущем (если это кому-то понадобится) можно сделать подгрузку отдельных картинок или тем с сервера, чтобы не запихивать всё в один архив. Или добавить возможность загружать свои собственные изображения (например, фото из галереи).
Может быть, со временем интерфейс станет немного красивее. Если это будет кому-нибудь нужно.
Но играть в этот минимализм можно уже прямо сейчас.
Всем привет! Работаю в IT (в продажах), но по вечерам люблю писать код и страдать фигней типа доты или бега.
Спортом занимаюсь давно: бегаю по утрам, хожу на турники. Но у меня, как и у многих, есть проблема — я люто ненавижу вести таблицы и записывать результаты. Скачиваю модный фитнес-трекер, пользуюсь им два дня, а потом успешно на него забиваю, потому что это душно.
При этом я замечаю, что в играх (будь то дота или какие-нибудь RPG) я могу залипать часами. Потому что там есть азарт, циферки, опыт, анимация левел-апа. Мозгу нравится получать эту цифровую награду.
И тут меня осенило: а что, если скрестить реальный спорт и игровую механику?
Короче, сел я на выходных и написал прототип веб-приложения. Логика простая: ты реально идешь на турники, делаешь подходы, отмечаешь это в приложении — и получаешь за это XP (очки опыта). Качаешь реальные мышцы, а параллельно растет твой цифровой ранг.
Самое прикольное — приложение генерирует карточки с прогрессом в стиле киберпанка, чтобы можно было потом в соцсети выложить. Вдохновлялся тем, как люди делятся пробежками в Strava(сам так постоянно делаю в иг), но захотел сделать визуал более фантастическим.
Пока это сырой веб-прототип, который я тестирую только на себе. В планах, если взлетит, запилить нормальное приложение на телефон.
1/5
Вопрос к Лиге: как вам вообще такая идея? Стоит ли развивать, или это очередная штука, которую хватит на 2 недели? И как вы вообще боретесь с тем, чтобы не забрасывать спорт?
У меня лежала без дела электронная книга. Исправная, с хорошим экраном, но большую часть времени просто занимала место. Выбрасывать её незачем, продавать тоже не хотелось: в отпуске или в дороге она ещё пригодится. Захотелось придумать ей какое-нибудь занятие на оставшееся время.
В интернете таких проектов хватает: из старых читалок делают часы, календари, погодные станции и домашние информационные панели. Стал смотреть, как это устроено, и во многих интересных переделках обнаружил примерно один путь: разобрать книгу, достать экран, подобрать к нему контроллер и подключить к другой плате.
С пайкой у меня проблем нет, но здесь сам подход показался странным. Читалка ведь уже представляет собой работающий компьютер: у неё есть процессор, Wi-Fi, питание, корпус и подключённый экран. Зачем выламывать из одного компьютера дисплей, чтобы подключать его к другому и заново собирать всё остальное? Если книга исправна, хотелось сначала попробовать обойтись тем, что в ней уже есть.
В моей был браузер. Отсюда и возникла идея: пусть открывает страницу и показывает на ней часы с погодой. А раз уж делать свой вариант, то с шахматами и поэтессами — календарём, новостями и всем остальным, что захочется добавить на экран. Так постепенно получился EINKTIME — полностью бесплатный проект для превращения читалки в настольную информационную панель.
Что можно поручить книжному браузеру
Начал с часов и погоды. Для такого экрана E-Ink подходит хорошо: цифры читаются при дневном свете, без подсветки ничего не светит в лицо, изображение больше похоже на печатную страницу. Поставил книгу на подставку — время и прогноз видны с рабочего места. Понадобилась для чтения — закрыл страницу и взял с собой. Корпус целый, внутри всё осталось на своих местах.
Но браузеры у читалок бывают довольно своеобразные. Интерфейс, который спокойно работает на телефоне, на книге может отображаться криво или вообще не запуститься. Поэтому я перенёс сборку изображения за пределы устройства: читалка получает уже готовую картинку и периодически её обновляет. Часы, календарь, графики и надписи нарисованы заранее, книжному браузеру остаётся показать результат.
Для передачи используется статичный GIF. Настраиваются число оттенков и разбиение изображения на части: некоторые старые браузеры небольшие файлы загружают надёжнее одного большого. Для самой страницы предусмотрен и простой HTML-вариант. На совместимости пришлось задержаться дольше, чем на первых часах с погодой.
Погода берётся из Open-Meteo для выбранного города. Это прогноз и метеоданные, собственных датчиков у книги от этого не появляется. Если нужна температура в комнате, её можно получить из внешнего источника, например из Home Assistant.
Как собрать свой экран: от отдельных информеров до готового виджета.
На книжном экране после часов и температуры оставалось немало места. Добавил календарь, затем новости, курсы валют и заметки. Быстро стало понятно, что один макет на всех не подойдёт: кому-то нужны часы на весь экран, кому-то расписание рядом с погодой, а кому-то вообще показатели домашнего сервера. Вместо набора отдельных страниц сделал редактор.
Экран делится на зоны, которые можно объединять и заполнять информерами. У каждого блока настраиваются шрифты, размеры, выравнивание, отступы, фон и рамки. Результат виден в предпросмотре. Размер и поворот задаются под конкретную книгу, город, часовой пояс и форматы данных — в региональных настройках.
Город для погоды, базовая валюта, единицы измерения и первый день недели задаются в общих настройках.
Сейчас в редакторе 25 типов информеров. Перечислю их по задачам, потому что за названиями не всегда понятно, зачем всё это может понадобиться.
Для обычного домашнего экрана есть цифровые и аналоговые часы, календарь, ежедневник с ручными событиями или подключением iCal, прогноз погоды и обратный отсчёт до выбранной даты. Можно собрать расписание на неделю, оставить рядом напоминание и видеть, сколько дней осталось до поездки. Погоду можно вывести компактной строкой или отдать ей весь экран с крупными значками и подробностями.
Для новостей и чтения — RSS, текстовые заметки и карточки с текстом и изображением из внешнего источника. Получается, например, утренний экран: время, погода и несколько заголовков из выбранной ленты. Для фотографий, иллюстраций и логотипов есть отдельный блок изображения, а для ссылки, которую удобно открыть с телефона, — QR-код.
Для финансов — курсы валют, криптовалюты и графики. Базовую валюту выбираете сами; она также подбирается по региону при регистрации. Историю валютного курса можно показать без своего сервера: для этого графика есть источник данных Банка России. Если данные у вас свои, можно передавать JSON и строить линии, столбики, области, круговые и кольцевые диаграммы.
Для работы сделал оперативную панель: один важный показатель крупно, несколько вторичных рядом и график за семь дней. Например, необработанные заказы, очередь обращений или остатки товара. Данные приходят по URL в JSON, поддерживается Bearer-токен. Размер подписей и чисел настраивается отдельно, чтобы значение действительно можно было прочитать издалека.
Для тех, кто следит за техникой, есть монитор доступности. Задаёте адрес, строку, которая должна присутствовать в ответе, и интервал проверки от минуты. Пока строка на месте — всё в порядке, исчезла — авария. Для состояния оборудования можно использовать светофор с двумя или тремя секциями, шкалу прибора или графический термометр. Есть блоки для качества воздуха, энергопотребления и данных Home Assistant.
Для коротких сообщений — уведомления со значком и текстом: посылка приехала, задача выполнена, пора что-то проверить. Расположение значка и надписи меняется, данные можно получать со своего сайта. Форматы внешних данных с примерами описаны прямо в редакторе соответствующего информера.
Шрифтов тоже несколько разных семейств: книжные, моноширинные, рукописные, узкие и сегментные, под ЖК-индикатор. Можно включить случайный выбор и подпись названия, если хочется посмотреть, какой лучше подходит к своему макету.
Собирать экран с нуля необязательно. Готовую композицию можно сохранить как виджет, а затем применить к другой книге с подгонкой под её размеры. После применения получается отдельная копия: можно поменять информеры и оформление, не затрагивая оригинал.
Для начала я собрал двадцать композиций под разные задачи. Есть «Тихое утро» с часами и погодой, «Книжный уголок», «Финансовый день», «Бухгалтерский контроль», «Инфраструктура под контролем» и «Инженерная смена». Есть отдельные варианты с курсами валют и графиками. Посмотреть их можно в открытом каталоге без регистрации.
Свои варианты может предложить в каталог любой пользователь. Перед публикацией макеты проходят автоматическую модерацию, очередь проверяется раз в час. Названия, описания и текстовые подписи переводятся на семь языков. Если хочется показывать несколько композиций, их можно отметить в списке и включить смену по порядку или случайно с нужным интервалом в минутах.
Готовые виджеты для дома, финансов, работы и мониторинга.
Почему проект бесплатный и где всё это работает
Если каждую минуту рисовать и отдавать изображения для всех книг с одного сервера, рост числа пользователей быстро станет моей проблемой. Поэтому постоянную работу экранов я вынес в аккаунты Cloudflare самих пользователей.
На EINKTIME остаются редактор, аккаунты, каталог и сохранение настроек. А в Cloudflare Workers разворачивается приложение, которое получает погоду и RSS, собирает изображение и отдаёт его книге. При обычной работе экран обращается туда напрямую. Мой сервер участвует, когда вы настраиваете макет, но не обслуживает каждое обновление часов.
Настройка: браузер → EINKTIME → ваш Cloudflare.
Работа экрана: читалка ↔ ваш Cloudflare ↔ источники данных.
Для пользователя установка запускается в один клик из кабинета EINKTIME: нужно войти в свой аккаунт Cloudflare и подтвердить подключение, дальше приложение разворачивается автоматически. Копировать код, выпускать API-токены вручную или арендовать сервер не требуется. Если книг несколько, подключение Cloudflare одно, а у каждого экрана свои адрес, макет и настройки.
Используется бесплатный тариф Workers с его лимитами. Так нагрузка от экранов распределяется между аккаунтами владельцев, а мне не нужно оплачивать общий поток изображений. Это и позволяет оставить проект полностью бесплатным.
Кроме того, работу экранов обслуживает инфраструктура Cloudflare, а не один мой сервер. Для такой задачи это хороший запас надёжности. Конечно, доступ к самому Cloudflare из своей сети стоит проверить заранее: если провайдер мешает загружать изображения, настройки читалки этого не исправят.
Адрес экрана открывается без авторизации, поскольку его должен читать книжный браузер. Учитывайте это при выборе данных: закрытые рабочие календари и секретную информацию на такой экран выводить не стоит.
Что проверить на своей читалке
Главное практическое ограничение — засыпание. Для постоянного экрана нужно, чтобы книга могла оставаться включённой, сохраняла Wi-Fi и продолжала обновлять страницу. Подключённый кабель сам по себе этого не гарантирует: некоторые прошивки всё равно отправляют устройство спать.
С E-Ink это легко пропустить: изображение остаётся на месте даже после засыпания. Поэтому проверять нужно по изменению времени, оставив страницу работать дольше обычного таймера сна. Инструкции по моделям и настройкам собираю на отдельной странице; все существующие читалки я, разумеется, не проверял.
Я использую этот вариант как стационарный: книга стоит на подставке с подключённым питанием. На телефоне проект тоже работает, но затевался он именно ради E-Ink. Если подходящей книги дома нет, на Авито их хватает. Перед покупкой под эту задачу стоит проверить конкретную модель: браузер, Wi-Fi, загрузку страницы и возможность отключить сон.
Где попробовать
Проект находится на einktime.com. Можно сначала посмотреть готовые виджеты, затем зарегистрироваться, собрать свой экран и подключить Cloudflare.
У меня в результате получилось именно то, с чего я начинал: книга перестала лежать без дела, при этом осталась пригодной для чтения. Если попробуете на своей, напишите модель, прошивку и как решили вопрос со сном. Это поможет собрать нормальный список совместимости, а не гадать по наличию браузера в характеристиках.
Microsoft не исправляет существующую десятилетия ошибку в Excel, связанную с несуществующей датой, из-за риска нарушить работу таблиц, сообщает немецкий журнал Computer Bild.
Ситуация состоит в том, что программа Excel считает 1900 год високосным, признавая существование 29 февраля. Так как каждому дню присваивается порядковый номер (например, 1 января 1900 года следует под номером 1, 2 января — под номером 2), из-за наличия номера 60, которое получило 29 февраля 1900 года, дальнейшие даты оказались сбиты на одну позицию.
«Microsoft поясняет: “Хотя технически возможно исправить это поведение, чтобы текущие версии Microsoft Excel не считали 1900 год високосным, недостатки такого подхода перевешивают преимущества”. Причина: если бы компания устранила ошибку, пришлось бы изменить всю нумерацию последующих дат. 1 марта 1900 года получило бы номер 60 вместо порядкового номера 61. Это сдвинуло бы все последующие даты на один день и могло бы привести к значительным проблемам, особенно в старых файлах Excel. Формулы, работающие с датами, в частности, могли бы давать некорректные результаты. Поэтому некорректная обработка високосных дней остается особенностью Excel», — пишет Computer Bild.
Уточняется, что, по данным Microsoft, проблема затрагивает только 1900 год, а все остальные високосные годы Excel обрабатывает корректно.