Автоматизация мобильных приложений с помощью uiautomator2
Сегодня мы поговорим о библиотеке uiautomator2, которая предоставляет мощные инструменты для автоматизации тестирования и взаимодействия с мобильными приложениями на платформе Android.
Эта библиотека может пригодиться для создания автотестов, скриптов для тестирования пользовательского интерфейса, и многих других задач, связанных с мобильной разработкой.
Что такое uiautomator2?
uiautomator2 - это Python-библиотека, предоставляющая возможность управления устройствами Android и взаимодействия с приложениями на них. Она основана на Google's Android Testing Support Library и является мощным инструментом для автоматизации действий на устройствах Android.
С uiautomator2, вы можете выполнять действия, такие как нажатие кнопок, ввод текста, чтение содержимого экрана устройства и многое другое, что делает ее полезной для автоматизации тестирования мобильных приложений.
#python#uiautomator2#автоматизация
Кризис заставляет автоматизировать 70% рутинных процессов — технологии против роста расходов
Российские компании в кризис 2022-2025 годов открыли для себя автоматизацию не как модный тренд, а как способ выживания. Когда зарплаты растут на 15-20% в год, а маржинальность падает, роботизация рутинных процессов становится вопросом жизни и смерти бизнеса.
Складская логистика, документооборот, расчет зарплат, обработка заявок клиентов — все это успешно передается роботам. Российские IT-компании предлагают решения в разы дешевле западных аналогов, а окупаемость составляет 8-12 месяцев против прежних 3-5 лет.
Банк "Открытие" автоматизировал 80% операций с документами, сократив штат бэк-офиса на 40%. "Магнит" внедрил роботизированные склады, увеличив производительность на 60% при том же количестве персонала.
🟣Алгоритм внедрения автоматизации в кризис:
Начинайте с аудита процессов — выявите операции, которые сотрудники выполняют по шаблону. Приоритет отдавайте задачам с большим объемом повторений и четким алгоритмом.
Ищите российских разработчиков RPA-решений — их продукты адаптированы под отечественное законодательство. Внедряйте поэтапно, начиная с одного департамента.
Кризис — лучшее время для технологических прорывов.
🇷🇺Бизнес ДНК России|#Автоматизация#Роботизация
Анализ видео: визуализация
Последний пост серии, первые два по ссылкам:
1. Подготовка данных
2. Анализ данных
Для виза снова используем cv2. Если данные записаны в таблицу xlsx, то понадобится модуль ast для корректного считывания синтаксиса списков.
При считывании объединяем данные в одномерный список (colors) и создаем пустой массив:
# суммарное число цветов
colors_length = len(colors)
# высота изображения в пикселях
height = 500;
# создаем пустой массив
# height: число строк
# colors_length: число столбцов
# 3: массив цвета (r, g, b)
img_array = np.zeros((height, colors_length, 3), np.uint8)
После этого заполняем массив цветами и с помощью cv2 создаем изображение:
# заполняем массив
for x in range(colors_length):
img_array[:,x] = colors[x]
# записываем в файл
cv2.imwrite('file_name.png', img_array)
Подробнее о параметрах файла палитры и том, как с ним работать, — в карточках.
P.S. И как обычно, полный код этой части в комментариях.
#датавиз#python
Анализ видео: цвет
На прошлом этапе мы записали по одному кадру видео в секунду в список captures_array. Имея данные о кадрах в формате rgb, мы можем определить преобладающие оттенки.
Для этого используем метод кластеризации, а точнее kmeans. Он позволяет разбить массив на нужное число групп по близости значений и выделить их центры (центроиды). Эти значения являются доминирующими оттенками кадра. На мой взгляд, детальность данных будет достаточная, если выделить пять центроидов (k). Этот алгоритм нужно применить в цикле к каждому кадру (capture):
# определяем размеры массива
shape = capture.shape
# пересобираем в одномерный массив
ar = capture.reshape(np.product(shape[:2]), shape[2]).astype(float)
# находим заданное число центроидов
centroids,_ = kmeans(ar, k)
В итоге получаем палитру каждого кадра фильма в хронологическом порядке. Как ее визуализировать, расскажу в следующем посте.
P.S. Полный код оставила в комментариях.
#датавиз#python
Анализ видео: подготовка данных
Я использую python, но общая логика алгоритма может пригодиться и для других языков.
Сначала нужно покадрово считать видео. Сделаем это с помощью библиотеки OpenCV (cv2):
import cv2
# видео целиком
video = cv2.VideoCapture('file_name.mp4')
# частота кадров
fps = int(video.get(cv2.CAP_PROP_FPS))
# число кадров во всем видео
frame_count = int(video.get(cv2.CAP_PROP_FRAME_COUNT))
Теперь можно запустить цикл и собрать один кадр за каждую секунду. В цикле повторяется такой код:
ret, frame = video.read()
Каждую итерацию считывается следующий кадр. В ret записывается информация о корректности считывания (True/False), frame — кадр в формате массива с rgb каждого пикселя.
Имея частоту видео, мы можем записать только один кадр в секунду. Такого объема данных достаточно для анализа. В итоге получаем список с числом кадров равным длительности видео в секундах. Что делать с ним дальше расскажу в следующем посте.
P.S. В комментариях полный код этой части.
#датавиз#python
АвтоУСН в Удмуртии
В начале 2025 года в адрес Министерства финансов УР от индивидуальных предпринимателей поступали обращения по вопросу введения автоматизированной упрощенной системы налогообложения (АвтоУСН) на территории Удмуртской Республики.
Новый спецрежим начал применяться с июля 2022 года в качестве эксперимента на территории четырех регионов: Москва, Татарстан, Московская и Калужская области. С 2025 года АвтоУСН может применяться на территории других субъектов Российской Федерации, которыми будет введен спецрежим.
На сессии Госсовета Удмуртской Республики 25 февраля 2025 сразу в двух чтениях депутатами принят закон «О введении в действие на территории Удмуртской Республики специального налогового режима «Автоматизированная упрощённая система налогообложения» с 01 апреля 2025 года.
АвтоУСН упрощает работу субъектов малого предпринимательства, снижая административную нагрузку. Предприниматели и организации, подпадающие под данный режим, смогут легко отслеживать свои доходы и расходы, не затрачивая время на подготовку отчетности. Автоматический расчет налогов исключает ошибки и упрощает процесс учета.
#автоматизация#налогообложение
Автоматизация рабочих зон: Важность сертифицированных регулировщиков
🚧 В современном строительстве дорожной инфраструктуры автоматизированные устройства для остановки движения (AFAD) все более востребованы, особенно для временных перекрытий полос. Почему же обязательна сертификация регулировщика? AFAD обеспечивает безопасность, однако его эксплуатация требует четкого наблюдения. 🔍 Согласно MUTCD, устройства должны находиться под контролем обученного специалиста, который обязан иметь четкую линию видимости до всех приближающихся транспортных средств.
Эффективное управление AFAD гарантирует безопасность как рабочих, так и участников дорожного движения. 🚦 Сертифицированные регулировщики снижают риски, связанные с непредвиденными ситуациями на объекте, обеспечивая надежное функционирование устройства.
Такие требования подчеркивают внимание к деталям в обеспечении безопасности на дорогах. Профессиональная подготовка и наличие надзора минимизируют возможность ошибок, поддерживая высокий уровень безопасности на рабочих зонах.
#Дороги#Безопасность#Автоматизация#Строительство
@stroynewsrussia
🔥 Сегодня
**Moscow Python Meetup**
📅 22 февраля / 18:00 / Москва, ул. Льва Толстого, д.16, конференц-зал «Экстрополис»
💵 Бесплатно
📝 Регистрация тут: https://goo.gl/sqFZUE
53я встреча сообщества Moscow Python. С докладами выступят разработчики из «Лаборатории Касперского», Сбербанка и Яндекса. Они расскажут об asyncio, мобильной разработке на Питоне и о применении JupyterHub.
🔗 Программа: https://goo.gl/kKpQqv
🔗 Сайт: https://goo.gl/8Woxvh
#python#Москва
✅ Завтра
**Moscow Python Meetup**
📅 22 февраля / 18:00 / Москва, ул. Льва Толстого, д.16, конференц-зал «Экстрополис»
💵 Бесплатно
📝 Регистрация тут: https://goo.gl/sqFZUE
53я встреча сообщества Moscow Python. С докладами выступят разработчики из «Лаборатории Касперского», Сбербанка и Яндекса. Они расскажут об asyncio, мобильной разработке на Питоне и о применении JupyterHub.
🔗 Программа: https://goo.gl/kKpQqv
🔗 Сайт: https://goo.gl/y82XG7
#python#Москва