Comments 52
Дело, конечно, хорошее для тех случаев, когда софт не предоставляет своего апи и нельзя автоматизировать иным способом (postmessage, D-Bus...).
Согласен. Взаимодействие с программой через апи (если он имеется) гораздо эффективнее. С другой стороны среднестатистический юзер наверняка не станет читать документацию и разбираться в апи как бы сильно ему не хотелось что-то автоматизировать. Тут же написание сценариев упрощено донельзя. Даже знание питона нужно в очень малой степени.
Или в случаях когда API очень нужно, но его не дают :) Например Яндекс.Директ дает API только «хорошим мальчикам», а так каждый сможет себе построить необходимый автомат для проведения компаний. Это яркий пример когда софт уравнивает в правах участников рынка :) Этакий «демократизатор» :)
На мой взгляд идея отличная, особенно как замена различными программам для создания макросов. В своё время искал что-то подобное, спасибо за статью.
Тема поста больше относится к юзабилити, чем к Питону. Все-таки для пользователей делалось, а не для программистов. Поддержка Питона в Sikuli — это лишь дополнительная возможность.
Я всю жизнь хотел такой язык программирования!
По моему — совершенно бесполезная вещь.Я уважаю себя, и не стал бы писать с
Их бы энергию в нужное русло, а не программы картинками писать.
Их бы энергию в нужное русло, а не программы картинками писать.
Это не программы, а универсальные скрипты для автоматизации рутинной работы. Для техподдержки — полезная штука. Не нужно объяснять юзеру по телефону, что и как кликать, можно просто написать такой скрипт и разослать всем, кому надо.
но это же идеальный язык для непрограммистов, почему же бесполезная
Непрограммистам не нужен язык программирования. Даже идеальный -)
окей, не программирования, а скриптования. я вот недавно парился с задачкой, для которой был необходим apple script и получилось у меня только потому что я нашёл скрипт похожий. а с такой софтиной всё решилось бы на ура.
В последнем релизе от 27 января снижены требования до Java 5 и существенно ускорено распознание элементов интерфейса.
Из недостатков — в Mac OS X нет нормального способа вводить русский текст.
Из недостатков — в Mac OS X нет нормального способа вводить русский текст.
Все равно, по моему гиблое дело :)
Вот если бы они написали распознование лиц по фотографиям, и точное биометрическое строение, и т.д., я был бы им благодарен.А так — ну хз что можно написать с помощью картинок, все это можно сделать на Сpp с помощью винапи куда быстрее.
Вот если бы они написали распознование лиц по фотографиям, и точное биометрическое строение, и т.д., я был бы им благодарен.А так — ну хз что можно написать с помощью картинок, все это можно сделать на Сpp с помощью винапи куда быстрее.
> Еще одной возможностью (и вероятно более серьезной) Sikuli является написание скриптов для тестирования интерфейсов.
Вы б хоть статью прочитали.
Вы б хоть статью прочитали.
Не раз убеждаюсь в правдивости одной отличной фразы, которую я долгое время не понимал:
«Хочешь сделать хорошо — сделай это своими руками».А всякие сомнительные коды, основанные на картинках, это на мой взгляд, по крайней мере не серьезно.
«Хочешь сделать хорошо — сделай это своими руками».А всякие сомнительные коды, основанные на картинках, это на мой взгляд, по крайней мере не серьезно.
Я не знаю винапи, почти не знаю си, и, честно говоря, не горю желанием их знать лучше. Мне это не нужно. А вот желание автоматизировать работу с каким-нибудь гуем возникает время от времени. Скриптик, в котором чего куда жать, указывается картинками, выдранными из этого самого интерфейса — это отличное решение. Вместо того, чтобы жать самому, заставляешь компьютер делать всё то же самое, что делал бы сам, только руки свободны при этом.
>Я не знаю винапи
Вам крупно повезло в этой жизни.
Вам крупно повезло в этой жизни.
Ну да, признаю, с такой точки зрения скрипты выглядят великолепно =) Но как для программиста ценность — 0.Я когда то сталкивался с программой, которя мышку переводила на нужную кнопку, вводила что нужно, и тыкала на кнопки, то есть, тоже самое только в .exe и с интуитивно понятным гуи.Ну это я так, к слову.
InqSoft Sign of Misery?
все это можно сделать на Сpp с помощью винапи куда быстрее
Но как для программиста ценность — 0.
Позволю не согласиться, к примеру как-то попалась программка требующая автоматизации и суть проблемы заключалась в том, что нужно было отслеживать ее меняющиеся состояние в не стандартном контроле (картинка которая формировалась в недрах программы). Собственно никаким WinAPI и Cpp тут не обошлось, пришлось открывать дебаг, смотреть процедуру которая вызывается при смене событий и патчить на предмет отсылки нужных уведомлений моему скрипту. Далеко не все умеют быстро отлаживать и править чужие бинарники, а здесь просто понаделал скриншотов и забыл, иначе пришлось бы писать собственно тот же самый фреймворк.
>все это можно сделать на Сpp с помощью винапи куда быстрее.
Под *никсы тоже с помощью винапи делать будете? ))
Под *никсы тоже с помощью винапи делать будете? ))
>В последнем релизе от 27 января снижены требования до Java 5
На офсайте написано: «Released on 2010/01/28. For Windows XP/Vista/7 (Java 6 is required)». Но возможна 6ая нужна только для окон.
На офсайте написано: «Released on 2010/01/28. For Windows XP/Vista/7 (Java 6 is required)». Но возможна 6ая нужна только для окон.
Извращение какое то оО.
Для решения подобных задач думаю логичнее использовать, например, AutoIt.
Для решения подобных задач думаю логичнее использовать, например, AutoIt.
AutoIt работает именно с Windows. И скрипты на нем выглядят весьма устрашающе. Инструмент явно для программистов. Думаю примерно то же с аналогами под другие оси.
В этом проекте, мне кажется, важна не нынешняя реализация и применение, а общая весьма оригинальная идея. К тому же ACM — слишком солидная организация, чтобы награждать совершенно бесполезные проекты.
В этом проекте, мне кажется, важна не нынешняя реализация и применение, а общая весьма оригинальная идея. К тому же ACM — слишком солидная организация, чтобы награждать совершенно бесполезные проекты.
А что будет если поменять тему интерфейса в оболочке?
А идея очень даже не плохая, например при эмуляции действий пользователя в играх типа ММО.
Интересно, поддерживается ли там альфа канал изображений.
Интересно, поддерживается ли там альфа канал изображений.
я пожалуй скопирую понравившийся комментарий из поста про эту штуку на dirty.ru:
будучи программистом, я начинаю понимать чувства, которые испытывают оперные певцы, просматривая канал MTV.
Иными словами, мне действительно обидно, что данную чушь называют программированием. Ничего общего с программированием данное видео не имеет.
будучи программистом, я начинаю понимать чувства, которые испытывают оперные певцы, просматривая канал MTV.
Иными словами, мне действительно обидно, что данную чушь называют программированием. Ничего общего с программированием данное видео не имеет.
Спасибо!!! Вы мне напомнили.)
Именно для покер бота (патипокер) я пытался состряпать решение работающее «на скринах» =).
Вот теперь это мне точно удастся!))
Именно для покер бота (патипокер) я пытался состряпать решение работающее «на скринах» =).
Вот теперь это мне точно удастся!))
А зачем решение на скринах? как-то писал фреймворк для знакомого тоже под какой-то покер, самое сложное там было распознать текст (чего здесь нет) и определение масти карты — проверка одного пикселя на цвет. Никаких картинок там не нужно.
Мне кажется так правильнее всего — клиент трогать нельзя по условиям покеррума, т.к. бот «для себя», то картинки не надо даже распознавать (другое разрешение например), только сравнивать с эталоном. И пользуясь этим, можно обойтись без распознавания текста — суммы в ставок, размер банка — всего 11 картинок, на цифры и запятую-).
Концепция интересная.
Если улучшить алгоритмы распознавания образов (или прикрутить уже довольно хорошие) то много чего можно сделать.
А если прикрутить искусственный интеллект…
Если улучшить алгоритмы распознавания образов (или прикрутить уже довольно хорошие) то много чего можно сделать.
А если прикрутить искусственный интеллект…
Мысль правильная — а реализация имхо нет. Сравнивание картинок это сдорово но имеет целый ряд ограничений, самые наверное неприятные это работа с текстовыми полями — ищет то он пустое поле, а в нём на стадии работы уже может быть какой-то текст, совпадения не будет. Мне кажется было бы разумнее использовать какие-то более стабильные идентификаторы — в виндовсе автоматизаторы активно используют координаты внутри окон и виндовые идентификаторы элементов и работает это на порядок лучше. Если это добавить к методу картинок то получится очень даже славный автоматизационный фреймворк, а так имхо проджукт пока годен только для забавы или применения в каких-то совсем малых домашних задачах
вот тут — twitter.com/sikuli объясняют зачем нужны .skl =)
https://launchpad.net/sikuli/trunk/0.9.7
https://launchpad.net/sikuli/trunk/0.9.7
блям-блям программирование
Подскажите, а можно ли получать значения полей, может умеет распознавать?
Иногда помимо автоматизация действий вроде ввода и кликов требуется еще
какие-то результаты получать, которые также выводятся на экран.
Иногда помимо автоматизация действий вроде ввода и кликов требуется еще
какие-то результаты получать, которые также выводятся на экран.
Домохозяйки будут теперь одним нажатием ногтём по клавиатуре выкладывать фотки вконтакт пачками по 200 штук из указанной папки и автоматом все будут на них отмечаться *ROFL*
А если серьезно, то это очень классная штука. Как было уже сказано выше это очень удобное ПО для создания всякого рода ботов. А если Сикулю еще научить капчу распознавать, то ууууууууу :)
А если серьезно, то это очень классная штука. Как было уже сказано выше это очень удобное ПО для создания всякого рода ботов. А если Сикулю еще научить капчу распознавать, то ууууууууу :)
Великолепная идея! И, на самом деле, очень просто в исполнении ( с программной точки зрения).
Все гениальное просто.
Все гениальное просто.
Прога конечно очень многообещающая, но я ее как раз посмотрел пару дней назад.
Кроме общей заглюченности и неудобства среды, заметил, что вводить русские буквы в поле ввода она не умеет. Так что в повседневной работе мне ее никак не применить.
PS. ее бы скрестить с autohotkey…
Кроме общей заглюченности и неудобства среды, заметил, что вводить русские буквы в поле ввода она не умеет. Так что в повседневной работе мне ее никак не применить.
PS. ее бы скрестить с autohotkey…
Пока та же проблема, что и с pywinauto.openqa.org/ — русские буквы не печатает.
У меня немного странные ассоциации.
Вот это вот click(КАРТИНКА) почему-то напоминает
www.youtube.com/watch?v=0npR64qy2qY
Вот это вот click(КАРТИНКА) почему-то напоминает
www.youtube.com/watch?v=0npR64qy2qY
У меня получилось заставить кораблик собирать ресурсы в зоне видимости, вот только еще прикрутитить ползанье по миникарте, и я стану богом)))
Sign up to leave a comment.
Sikuli — program ANYTHING using GUI screenshoots