Группа исследователей из Массачусетского технического
института представила новаторскую технологию Sikuli, призванную значительно
облегчить программирование графических интерфейсов.
Вообще говоря, многие люди хотят автоматизировать свою
работу, но не знают, как сделать простое нажатие нужной кнопки на экране из
своих программ. Действительно, когда вы видите кнопку на экране, ее легко
нажать с помощью мыши или клавиатуры, но описать это нажатие в программе порой
очень непросто. Авторы технологии Sikuli, название которой переводится как
«Глаз бога» с языка мексиканских индейцев уичоли, предложили замечательную
альтернативу – когда вам нужно сослаться на какой-то элемент экрана, который можно
увидеть, вы просто вставляете в свой код изображение этого элемента.
Идея, заложенная в технологию Sikuli, кажется настолько
очевидной, что неясно, почему до сих пор не существовало ничего подобного.
Например, вы хотите написать приложение, которое использует данные о текущем
местоположении автобусов, чтобы узнать, когда на вашу остановку придет нужный
вам автобус. Вы можете взять снимок с сайта городского транспорта, где
будет изображена карта с положением автобусов и вашей остановки. Положим, что
программа будет уведомлять пользователя, когда маркер нужного автобуса
достигнет определенной точки. Вместо того, чтобы указывать географические
координаты этой точки, можно просто дать программе изображение этой точки на
карте.
Распознавание нужных элементов в технологии Sikuli
выполняется почти так же, как в мозгу человека – специальный механизм
обеспечивает оптическое распознавание текста, а компоненты компьютерного зрения
помогают найти на экране объект, наиболее похожий на приведенный вами в
исходном коде сценария.
Еще одно интересное применение технологии Sikuli заключается
в визуальном поиске информации о непонятных вам элементах. Специальные
компоненты Sikuli создают собственный каталог элементов интерфейса, собирая
информацию из файлов справки, из учебников и документации. Анализируя текст
рядом со значками в документации, система Sikuli позволяет найти информацию по
нужному элементу, просто указав изображение этого элемента на снимке экрана.
Технология написания сценариев с использованием визуальных
ссылок на элементы интерфейса Sikuli основана на языке Jython (реализация языка
Python на базе Java) и позволяет писать довольно сложные сценарии. Кроме всего
прочего, эта технология совершенно не зависит от внутренних API операционных
систем и приложений – взаимодействие осуществляется только через общий
графический интерфейс, поэтому управлять можно не только приложениями, но и
веб-страницами.
Подробнее узнать о технологии Sikuli и загрузить себе копию
этой платформы для написания сценариев с использованием визуальных элементов
можно на официальном сайте проекта.
По материалам сайта Digital Beat.
|