Работы фрилансеров Программирование
Прикладное программирование

Примеры работ и кейсы по направлению «Прикладное программирование»

Александр Макаров
Александр Макаров 5 месяцев назад
Программа-оболочка для книги блогера
Я создал в короткие сроки программу-оболочку для электронной книги блогера, с возможностью экспорта и печати как отдельных глав, так и всей книги целиком. Для разработки интерфейса появилась необходимость написать свой компонент для Delphi 7, позволяющий создавать графические кнопки в 4-х состояниях: нет фокуса-отжато, фокус-отжато, фокус-нажато, нет фокуса-нажато. Этот компонент я в дальнейшем успешно применил и в других своих программах.
Евгений Ситников
Евгений Ситников 5 месяцев назад
Программатор ЭБУ ДВС Toyota/Lexus
Клиент-серверное приложения для программирования автомобилей Toyota/Lexus. Работа с автомобилем происходит через любой PassThru J2534 адаптер. База тюнинговых прошивок хранится на сервере.
Евгений Ситников
Евгений Ситников 5 месяцев назад
Реверс инжиниринг заводского загрузчика V850 Toyota/Lexus для описания протокола работы с ним
Реверс инжиниринг заводского загрузчика NEC/Renesas V850 Toyota/Lexus для описания протокола работы с ним. Ядро V850 с заказной, не документированной периферией, с которой пришлось разбираться
Евгений Ситников
Евгений Ситников 5 месяцев назад
Конвертер файлов CUW в BIN для Toyota/Lexus (Telegram bot)
Конвертер файлов заводского обновления CUW блоков управления Toyota/Lexus в файлы формата BIN для последующего тюнинга и программирования
Евгений Ситников
Евгений Ситников 5 месяцев назад
Аппаратный подборщик паролей к ЭБУ ДВС Toyota/Lexus
Проект на заказ. Программно-аппаратный комплекс. Подбор паролей для блока управления двигателем Toyota/Lexus. Подобранный пароль позволяет программировать блок управления.
Алёна Пасевьева
Алёна Пасевьева 5 месяцев назад
ИИ-агент первой линии поддержки
Задача: Сотрудники службы поддержки 80% времени тратят на однотипные, шаблонные вопросы. Это приводило к «замыливанию» внимания, потере эмпатии и выгоранию. В итоге на действительно сложные и важные запросы клиентов у команды не оставалось ни сил, ни времени. Решение: Разработка ИИ-фильтра на n8n + LLM + RAG-база Как это работает: Все входящие запросы в Telegram-бот компании первым встречает ИИ-агент. Бот анализирует вопрос по корпоративной базе знаний (RAG) и если ответ есть в регламентах, он отвечает Если запрос нестандартный или требует человеческого участия, ИИ-агент автоматически переключает диалог на живого оператора, передавая ему весь контекст беседы. Результат Первая линия автоматизирована на 70–80%. Сотрудники включаются только там, где реально нужен человек, сохраняя высокий уровень сервиса и эмпатии. Время ожидания ответа для клиента сокращено до 0 секунд.
Алексей Спиридонов
Алексей Спиридонов 5 месяцев назад
Парсер интернет-магазина косметики
Исходные данные: сайт https://goldapple.ru/. Необходимо получить остатки товаров в определенном регионе, разбитые по магазинам и сохранить в Excel. Как выглядит в браузере? Довольно медленный сайт, карточки товаров с зацикленным видео, карточки выводятся по 20 штук, при скроллинге вниз подгружаются новые товары. Чтобы узнать наличие, нужно кликнуть по карточке, дождаться загрузки и нажать на кнопку "Наличие", после чего открывается всплывающее окно со списком магазинов. Что "под капотом"? Сайт - просто кошмар для парсера: всё содержимое динамическое, подгружается небыстро, периодически вылетает с ошибкой тайм-аута, с анонимным VPN не пускает, на страницах десятки скриптов, есть внутренний JS - API, но с защитой и авторизацией, которую не удалось победить, сохраняет кучу данных и в кукисы, и local storage... Пришлось реализовывать через имитацию браузера, в данном случае - библиотеку Nodriver. Страницы получаем через nodriver, а карточки товаров и нужные поля парсим через bs4, так как он делает это быстрее, чем nodriver. Клик по кнопке "Наличие", к сожалению не работает в headless режиме, поэтому на VPS без графического интерфейса пользоваться не получится. Товаров очень много, загрузка страниц, как писал выше, весьма небыстрая, поэтому добавляем многопоточный режим с возможностью указать прокси. Результаты пишутся в csv-файл после обработки каждого товара, чтобы не потерять данные при обрыве связи или сбоях. Было непросто, но результат достигнут.
Алексей Спиридонов
Алексей Спиридонов 5 месяцев назад
Парсер сайта спортивной статистики
Исходные данные: сайт https://nb-bet.com/hockey/Results. Необходимо получить список хоккейных матчей за сегодня, получить по каждому из них статистику участвующих команд, отфильтровать по определенным параметрам, сгруппировать и переслать в канал telegam. Как выглядит в браузере? Таблица со списком сегодняшних матчей, разбитая по времени игры, странам и командам. При клике на матч переходит на страницу статистики, где и находится вся нужная по ТЗ информация по командам. Т.е. при ручном получении информации надо обойти все строчки таблицы, "прокликать" по каждой и найти на странице интересующие нас параметры. Что "под капотом"? В devtools видим, что у сайта есть внутренний API на основе get-запросов. Защиты нет, авторизации нет. Отлично! Можно получать нужную информацию напрямую, без необходимости парсить html или имитировать браузер. Запросом получаем список сегодняшних матчей, из которого берем названия команд и ссылки на статистику. Обходим список, одним запросом получаем статистику по каждой паре команд. Выбираем нужные нам данные, фильтруем, группируем, отправляем в telegram. Задача выполнена.
Алексей Спиридонов
Алексей Спиридонов 6 месяцев назад
Парсер реестра сертификатов соответствия
Итак, исходные данные: есть сайт https://pub.fsa.gov.ru/rss/certificate. Необходимо получить список сертификатов за 5 лет, извлечь информацию (32 параметра для каждого) и сохранить список в Excel. В браузере имеем таблицу со списком, который выводится постранично, на странице от 10 до 100 строк, справа - фильтры. Список содержит названия и краткую информацию о сертификатах, при клике по строке попадаем в раздел с подробной информацией в виде таблицы с множеством вкладок. А что же у нас внутри? Содержимое подгружается динамически с помощью js-запросов, что, конечно, не сюрприз. Через devtools видим, что есть API, что сильно упрощает задачу - можно обойтись без имитации браузера и получать данные напрямую запросами. Но! Без авторизации запросы не проходят... Что ж, тогда с помощью библиотеки на основе Selenium при запуске имитируем вход на сайт и перехватываем данные авторизации в заголовках. Работает в headless режиме, что даёт возможность по-прежнему запускать скрипт на дешевых vps без графического интерфейса. Всё, теперь можно пользоваться запросами, поместив в собственные заголовки полученные данные авторизации, а Selenium больше не нужен. Запрос на получение списка довольно прост. Он дает нам возможность получать ссылки на сертификаты по 100 штук за один запрос. Обойти все страницы не составит труда. Подробную инфу по каждому элементу получить чуть сложнее - тут 2 запроса, где второй ссылается на данные первого. Но это детали. Получаем, разбираем, сохраняем в csv. Готово.
Глеб Вовчок
Глеб Вовчок 6 месяцев назад
SC2 'R' LAN - проект эмуляции локальных матчей для игры StarCraft 2.
SC2 'R' LAN - закрытый проект по эмуляции матчей для игры StarCraft 2, являющийся proof of concept того, что данная игра могла работать в режиме локальной сети без подключения к официальным серверам разработчиков. Основной смысл в том, что сервера можно держать уже локально, оставив проверку лицензии за авторами игры, тем самым никак не нарушая их политик. Используется официальный SC2Api, который был открыт для разработчиков в связи с развитием продвинутого ИИ такими крупными компаниями как Google. Это и отличает данную программу от "пираток". - Есть возможность создавать подключения через WebSocket, соответственно и устроить соединения за пределами локальной сети. - Можно практиковаться в игре против Искусственного Интеллекта. p.s. С дизайном погорячился, локализация ещё не оформлена до конца, так как подключения между игроками ещё не стабильны.