Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 2)

Модерирует : gyra, Maz

Widok (01-06-2010 13:08): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

AutoIt3
(Часть 1)

 
 
Домашняя страница: http://www.autoitscript.com
Страница загрузки: http://www.autoitscript.com/autoit3/downloads.php
 
Описание:

Цитата:
AutoIt v3 - это язык для написания сценариев, напоминающий BASIC. Основным его назначением является автоматизация работ с Windows GUI (графическим интерфейсом пользователя MS Windows). Для выполнения этой сложной задачи предоставляется комбинация испытанных методов, включающих в себя эмуляцию нажатий комбинаций клавиш клавиатуры, перемещения указателя мыши, управление окнами и их визуальными элементами. Как показывает практика, эти "приводные ремни" весьма эффективны для получения работающих решений в ситуациях, когда другие стандартные средства (например, VBScript и SendKeys) оказываются бессильны.
Умеет он очень и очень многое! Бесплатный.

 
Помощь по AutoIT:
  • Справку на русском (и не только) вы всегда(?) сможете найти тут
  • Учебник по AutoIt для начинающих
  • Видео-руководства на YouTube (англ.)
  • AutoIt v3: Your Quick Guide (652 КБ) - Ваш быстрый гид в мир AutoIt-а (книга в формате pdf) - Та же книжка online.
  • Справочник по командам rundll32
  • Справка WinAPI (Win 32 API по шагам)
  • Русский справочник по API-функциям
  • Полезная информация по WinAPI на русском
  • Помощь по регулярным выражениям
  • Tutorial on DllCall() & DllStructs - Небольшое (пока?) руководство по использованию функции DllCall*()
     
     
    Ресурсы, посвящённые AutoIt
  • AutoIt в Википедии
  • AutoIt Russian Community - Русское сообщество AutoIt
  • Jabber-конференция для обсуждения мелких вопросов касающихся AutoIt
  • Обзор скриптового языка AutoIt (рус.)
  • AutoIt на Yahoo! Groups
  • Раздел в конфиренции OSzone.net, посвящённый AutoIt
  • Пополняющийся со временем сайт с полезными утилитами и функциями на AutoIt
  • Коллекция AutoIt-скриптов от Sanja Alone
  • Коллекция AutoIt-скриптов от MSFN (могут быть устаревшие).
  • Коллекция AutoIt-скриптов от AZJIO
     
     
    !!! Полезные советы и заметки - новичкам и не только
     
     
  • Рекомендации по написанию скриптов
     
     
    Инструменты для AutoIt:
  • AutoIt Path Switcher - Переключение пути к папке AutoIt.
  • AutoIt3Wrapper [Страница закачки] - Программа для компиляции скрипта с дополнительными возможностями (добавление значка, описания и т.п).
  • Koda (724 Kb) - Визуализация работы с GUI - аналог Visual Basic.
  • CodeWizard (400 Kb) - нечто простенькое на вариант Koda.
  • AutoItMacroGenerator (34 Kb) - Записывает в реальном времени действия пользователя в AutoIt-код.
  • ScriptWriter (78 Kb) - Аналог AutoItMacroGenerator.
  • API Constants (1042 Kb) - Утилита для просмотра всех констант API-функции и не только.
  • Страница закачки утилит, которые идут в отдельной поставке редактора SciTE.
  • AutoIt-меню для браузера Opera.
     
    Готовые скрипты и программы с открытым кодом на AutoIt:
  • Desktop Icons Restorator - Скрипт-программа для сохранения/восстановления позиции значков рабочего стола.
  • CaptureIt - Утилита для захвата изображений с экрана.
  • SwitchIt - Скрипт для конвертирования выделенного текста.
  • Скрипт раскраски кода AutoIt для публикации в форумах
     
    Общие вопросы и решения на Autoit:
  • Обработчик скриптов добавляющий отладчик (debugger) - Последняя версия: AutoItScript Add Debugger
  • Интеракция между несколькими скриптами
  • Пример использование интеракции между скриптами - Добавление элементов GUI с внешнего модуля
  • Чтение и запись данных с/в окна/о SciTE
  • Пример автообновления версии своего приложения
  • Копирование большого файла с отображением данных прогресса
  • Создание динамического меню в Tray Icon (значок в области уведомлений)
  • Пример создания своего мастера (Wizard)
  • Метод, позволяющий запускать код VBS без создания временных файлов
  • Описание функции GUIRegisterMsg()
  • Пример перехвата вводимых символов с клавиатуры
  • Пример деактивирования TabItem
  • Пример вывода лога в Edit-поле (с поддержкой форматирования текста)
  • Пример остановки/начало выполнения скрипта + Слежение за буфером обмена с заменой неподдерживаемых в имени файла символов
  • Подключение приложения (GUI) к буферу обмена
  • Пример использования меню с значками (ModernMenu.au3) -> Список программ в меню значка в системном трее
  • Пример подсчёта интервала времени между нажатиями клавиш
  • Слежение нажатых элементов в текущем окне (под курсором)
  • Написание instant messaging Бота на AutoIt
  • Способ, позволяющий посылать нажатие клавиши в неактивное окно (не путать со свёрнутым)
  • Сервер <=> Клиент - Пример передачи файла
  • Пример отображения только элементов GUI (без самой оболочки)
  • Модуль, превращающий ваше приложение в Trial-версию
  • Слежение за выделенным текстом и с последующим его помещением в файл
     
    Отдельные функции и библиотеки (UDF):
  • Функции, относящиеся к интернету
  • Функции для работы с процессами и окнами
  • Функции для работы с файлами
  • Функции для GUI/Tray
  • Системные функции
  • Разное (то, что не подпадает под другие категории)
     


     
    За шапкой следит ViSiToR  

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 14:47 12-01-2009 | Исправлено: Maz, 11:50 17-04-2017
    melar

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Решение конечно интересное.. но редактирование страницы недопускается

    Всего записей: 4 | Зарегистр. 13-04-2009 | Отправлено: 15:23 13-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Есть загвоздка с сохранением картинки при помощи _IE*
    В двух словах, есть сайт, на котором необхождима авторизация. Для навигации по нему юзаю IE UDF.
    С сайта мне нужно дернуть картинки, открываются они прямым линком на JPG только после авторизации, так что если попробовать дернуть при помощие InetGet или подобными способами, то ничего не скачешь, т.к. видать, куки или еще что проверяется.
    То ли я туплю, то ли еще что, но никак могу сохранить картинку, открытую в броузере.
    Вот например такое начало:
    #include <ie.au3>
     
    $ie = _IECreate('http://www.autoitscript.com/autoit3/files/graphics/autoit_matrix_wall_thumb.jpg')
     
    Вот как заюзать _IEImgGetCollection, или _IEGetObj*, или еще какую фунцию, чтобы сохранить эту пикчу? Еще раз повторюсь, что InetGet и подобные не подйдут, т.к. картинка просто не откроется.
    _IEAction($ie, 'SAVEAS'), просто выдает диалог сохранения файла и скрипт ждет действий пользователя. И по ряду причин взимодествие с диалоговыми окнами очень нежелательно.

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 16:35 13-04-2009
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    melar, а картинка всегда постоянная? цвета уникальные в окне есть?
    если да можно по цвету пикселя куда угодно ткнуть.
    Вот я как-то писал бота для игры в сапёра на бабки)) И находил игровое поле в окне вот так:  


    Код:
    WinActivate ( "Онлайн игра - Сапёр - Opera")
    $browser_size = WinGetClientSize("Онлайн игра - Сапёр - Opera") ; определяем размер окна, [0]ширина и [1]высота
    $coord = PixelSearch( 0, 0, $browser_size[0], $browser_size[1], 0x97E6F2);ищем голубоватый цвет, [0]X и [1]Y



    Всего записей: 1645 | Зарегистр. 01-05-2006 | Отправлено: 17:01 13-04-2009
    vicbox777



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Еще раз повторюсь, что InetGet и подобные не подйдут

    A разве нельзя, зайти на сайт через _IECreate..., найти прямую ссылку на картинку, дальше вставить эту ссылку в
    Код:
    $ssilka="http://www.autoitscript.com/autoit3/files/graphics/autoit_matrix_wall_thumb.jpg"
    $get_picture =
    InetGet($ssilka, "C:\картинка.jpg", 1)

    Всего записей: 165 | Зарегистр. 17-06-2008 | Отправлено: 18:39 13-04-2009 | Исправлено: vicbox777, 18:41 13-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vicbox777
    Я же 2 раза написал, что InetGet не сможет скачать.

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 18:54 13-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    melar
    а простое обновление страницы? т.е. не добавление ссылки а изминение того onclick на картинке?
    и к тому же это и не редактирование - все что делает это счиытвается html страницы
    добавляется ссылка и результат вводится в IE - т.е. это только у вас на компе и только пока не перезагрузите страницу...
     
    Добавлено:
    timsky
    в этой IE UDF сохранение картинок нет.
     
    попробуйте выяснить метод авторизации, тогда очень подойдет _INetGetSource.
     
    к примеру такой вариант: www.domen.ru/login.php?login=qwe&pass=ewq
    тогда просто подставляйте свои значения
     
    сначала _INetGetSource("www.domen.ru/login.php?login=qwe&pass=ewq")
    далее изучить то что получилось - т.е. прошла или нет авторизация
    и ищите нужную картинку....

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 19:20 13-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sproxy
    Проблема в том, что там не так все просто с авторизацией. Идет сверка сессии, IP, куки и т.д...
    Владельцы сайта делают все, чтобы избежать неавторизованного доступа. Добраться до содержмого сайта можно только авторизовавшись в броузере. HTTP реквесты не пробовал, да и нет времени с этим заморачиваться
    Очень нужен эффективный способ извлечения пикчи из окна IE. Пусть для этого нужен DLLCALL или еще какие UDF, мне нужно просто дернуть пикчу из окна IE

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 19:51 13-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    timsky
    1 _INetGetSource - это почти то же самый браузер, нуууууууу почти ))))))))
    "сверка сессии" - ссесии появляются после авторизации
    IP - так и так он у вас будет один и тот же
    куки - а если вы первый раз авторизируйтесь или с другого компа где нет кук с этого сайта - то что они делают? - да, создаются новые. с _INetGetSource надо проверить, но возможно....
     
    2  ни чего не мешает запустить IE (даже в скрытом виде) и банально по всем правилом автоматизации в AutoIt пройти авторизацию (как понимаю все уровни защиты будут выполненны) - и дергать картинку ))
     
    3 если просиходит авторизации и сверка по кукам - нет ли там чек-бокса запомнить меня? тогда и аторизировать придется меньше раз...
     

    Цитата:
    Пусть для этого нужен DLLCALL или еще какие UDF

    нет, тут ни че не поможет, если ссылки нет и будет только после авторизации - только если не приехать в офис где стоит сервак или домой к админу и не взять ссылку с его компа )))

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 20:07 13-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    2  ни чего не мешает запустить IE (даже в скрытом виде) и банально по всем правилом автоматизации в AutoIt пройти авторизацию (как понимаю все уровни защиты будут выполненны) - и дергать картинку ))

    Уже давно все это есть. То, что я здесь выложил - краткое содержание моего скрипта
    Скрипт авторизуется, жмет нужные галки и выдергивает УРЛ на пикчу.
    Этот урл проканает только в том же броузере и той же сессии.
    Геморрой с сохранением:
    Открывать новое окно ИЕ с этим урлом, запускать тулзу, которая будет дергать желаемое имя файла из параметра ком строки, вызывать SaveAs в ИЕ и ждать что вторая тулза отработала безглючно и вбила нужный путь к файлу и нажала Save, потому что при вызове SaveAs скрипт ждет действий юзера до опупения.
     
    Вот и думал, может есть какой способ с помощью объектов IE/COM как-то пикчу дернуть без всех этих танцев.

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 22:56 13-04-2009 | Исправлено: timsky, 22:57 13-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    timsky
    немного алгоритм не допонял и запутался ))
    пример:
    1. скрипт выполняет авторизацию на сайте
    2. открывает нужную картинку
    3. сохраняет её
    так происходит?
    если все работает, то что не так?
     
    + а что за сайт такой секретный? url хоть глянуть можно?  
     
    Добавлено:

    Цитата:
    То, что я здесь выложил - краткое содержание моего скрипта

    ээээммм....а где выложили?

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 23:08 13-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    ээээммм....а где выложили?

    Чуть выше выложил:
    -------------------------------------------------------------
    #include <ie.au3>
     
    $ie = _IECreate('http://www.autoitscript.com/autoit3/files/graphics/autoit_matrix_wall_thumb.jpg')
    -------------------------------------------------------------
     

    Цитата:
    1. скрипт выполняет авторизацию на сайте  
    2. открывает нужную картинку

    Да

    Цитата:
    3. сохраняет её  
    так происходит?  
    если все работает, то что не так?

    Да, но хочу переделать его, чтобы вообще никаких окошек не мелькало. B дальнейшем  таких скриптов будет много параллельно работающих. А все эти танцы с кликанием по контролам только все усложняют

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 23:34 13-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    помойму, через IE.au3 это максимальный вариант.
     
    возможно, стоит попробовать после авторизации
    дописать в страничку javaScript код,
    который будет отыскивать нужную картинку и сохранять её.
    тогда не придется открывать диалоговых окон на сохраннение...
     
    все отсальное это запросами..

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 00:11 14-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    возможно, стоит попробовать после авторизации  
    дописать в страничку javaScript код,  
    который будет отыскивать нужную картинку и сохранять её.  
    тогда не придется открывать диалоговых окон на сохраннение...

    Ява для меня темный лес

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 00:32 14-04-2009
    ViSiToR



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    timsky 00:32 14-04-2009
    Цитата:
    Ява для меня темный лес

    Не путаем Ява (Java) с Ява-скриптом (JavaScript), это разные вещи .

    ----------
    ViSiToR a.k.a CreatoR
    CreatoR это не ник, CreatoR это стиль жизни!

    Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 01:51 14-04-2009
    timsky



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ViSiToR
    Да лана придираться. Я знаю, что это разные весчи.
    Для меня это один и тот же темный лес

    Всего записей: 2287 | Зарегистр. 08-06-2004 | Отправлено: 02:50 14-04-2009
    qwertyjop

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    День добрый всем!
    У меня такая проблема, человек прислал скрипт и пропал, сказал лишь что компилируется автоитом. Сколько я не пробовал ничего путного у меня не выходило, в программе полны ноль. Возможно вы поможете разобратся что к чему.
    Вот собственно то что прислал человек http://depositfiles.com/files/5yf19tyhc

    Всего записей: 6 | Зарегистр. 09-04-2009 | Отправлено: 06:07 14-04-2009
    sproxy



    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    qwertyjop
    ссылка не открывается..

    Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 06:48 14-04-2009
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Чёта там какая та лажа, одна UDF  File.au3 , а остальные 2 файла вообще не похожи на автоит скрипт.
    Судя по коду это должен быть бот от div1.say-plz.ru

    Всего записей: 1645 | Зарегистр. 01-05-2006 | Отправлено: 08:35 14-04-2009 | Исправлено: ynbIpb, 08:39 14-04-2009
    qwertyjop

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    http://www.yurl.ru/522/
    видимо форум посчитал её спамом
    Да наверное этот бот...

    Всего записей: 6 | Зарегистр. 09-04-2009 | Отправлено: 08:54 14-04-2009 | Исправлено: qwertyjop, 08:58 14-04-2009
    Sergey_Demchuk



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Что может быть
     
    Send ("^{Insert}")
    $bak = ClipGet()
    MsgBox(0, "Clipboard contains:", $bak)
     
    Переменная $bak пустая , хотя в буфере обмена содержится следующее:
     
    Код запроса:   QGKG 6YQR FEA6 JEP3 97Z2 SL6C

    Всего записей: 3551 | Зарегистр. 16-12-2002 | Отправлено: 11:38 14-04-2009
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166

    Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 2)
    Widok (01-06-2010 13:08): Лимит страниц. Продолжаем здесь.


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru