Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Axelenz

Pages: 1 [2] 3
16
Развернуть окно на весь экран

Столкнулся с проблемой как корректно развернуть (maximize) окно. Кто-то уже отвечал на этот вопрос на форуме и посоветовал использовать WNDSETINFO($hwnd, 0,0, $_xmax,$_ymax), но это не "честный" maximize, и это не будет работать в случае мульти-мониторов (ну точнее это будет работать, но совсем не так как вы предполагали :)) )
Нашел как сделать "честный" maximize:
Code: (clickermann) [Select]
POSTMESSAGE($_hwnd, 0x0112, 0xF030, 0) // Развернуть окно на весь экрангде
0x0112 это WM_SYSCOMMAND
0xF030 это SC_MAXIMIZE
(Если нужен minimize, то - 0xF020 это SC_MINIMIZE)
Работает идеально у меня на версии кликерманна 4.12, ОС: Win10 x64
Может кому пригодится..

Погасить экран монитора
(иногда полезно ставить перед HALT)
Code: (clickermann) [Select]
SendMessage(0xFFFF, 0x0112, 0xF170, 2) //Погасить экран монитора
HWND_BROADCAST = 0xFFFF
WM_SYSCOMMAND = 0x0112
SC_MONITORPOWER = 0xF170
Code: (html5) [Select]
lParam Описание
-1 Переводит монитор в нормальный, рабочий режим
0 Переводит монитор в режим "легкого" засыпания
1 Переводит монитор в спящий режим
2 Монитор выключается
(у меня на Windows 8.1 работает только "2").

Включить экран - движение мышкой.

17
Как вариант:

Code: (clickermann) [Select]
//Подпрограмма вставить данные из буфера в PS (нажать/отпустить правую клавишу мышки)
SUB(down_up)
   POSTMESSAGE($hwnd, 0x0204, 0, 0)
   WAITMS(50)
   POSTMESSAGE($hwnd, 0x0205, 0, 0)
   WAITMS(50)
   
   POSTMESSAGE($hwnd, 0x0100, 0x0D, 0)
   WAITMS(500)
END_SUB

$dir_file = STRCONCAT("C:\Users\User\Downloads\", $price)
$dir_date = STRCONCAT("D:\Price\", $_date_)
$dir_date_file = STRCONCAT($dir_date, "\price.xlsx")

EXECUTE("C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe")
WAITMS(200)

$hwnd = WNDFIND("Windows PowerShell")

WNDPOS($hwnd, 0, 0)
WAITMS(200)

//Разблокировать файл
TOCLIP(STRCONCAT("Unblock-File -Path '", $dir_file, "'"))
down_up()

//Создать каталог
TOCLIP(STRCONCAT("New-Item -Path '", $dir_date, "' -ItemType 'directory'"))
down_up()

//Переместить файл в новый каталог и переименовать
TOCLIP(STRCONCAT("Move-Item -Path '", $dir_file, "' -Destination '", $dir_date_file, "'"))
down_up()

//Закрыть PowerShell
TOCLIP("exit")
down_up()

18
Предложения / Re: [Alpha/Beta Testing]
« on: February 28, 2018, 05:15:19 PM »
Да это понятно, браузеры совсем офигели. Закручивают гайки уже давно, медленно но верно. Взяли на себя роль цензуры и полиции. Пора делать свой браузер с блекджеком и блудницами.

Как вариант (с блудницами) использую в этой же ...й стране Zaborona VPN. У меня с десяток разных браузеров установлено, под разные нужды и заходят они куда попало ) Как по мне, то удобный браузер Cyberfox, там хоть все старые лисьи аддоны работают.
Это не реклама, это на тот случай, если кто не может скачать с Яндекс-диска...

19
Кусок кода позволяет найти файлы (в папке загрузки) по одинаковому словосочетанию в названии, из них выбирается файл более новый, например: по дате (времени) в названии самого файла. С помощью горячих клавиш файл разблокируется (для Office 2016).
Работает для Windows 8.1, Office 2016.

Code: (clickermann) [Select]
//Закрыть окно Clickermann
WNDSTATE(WNDFIND("Редактор - C:\Clickermann\"), 0)
WAIT(1)


//------------------------- Начальные данные для поиска файла ------------------
$name = inputbox("Введи имя файла для поиска или используй по умолчанию:", "price_2018", 5)

HINTPOPUP($name, "Искать файл по имени:")
WAIT(2)

//Добавление "0" перед месяцем и датой, если они имеют длину в 1 знак
IF(STRLEN($_date_m) = 1)
   $_date_m = STRCONCAT("0", $_date_m)
END_IF

IF(STRLEN($_date_d) = 1)
   $_date_d = STRCONCAT("0", $_date_d)
END_IF

//Объединить в одну строку год, месяц, дату: "20180224"
$_date_ = STRCONCAT($_date_y, $_date_m, $_date_d)

HINTPOPUP($_date_, "Искать файл по дате:")
WAIT(2)


//------------------------- Цикл поиска нужного файла --------------------------
GETFILELIST($prices, "C:\Users\User\Downloads\*.xlsx")

$price = "Нет файлов с таким именем !"

FOR($n = 0, $n < ARRSIZE($prices))
   $price = "Нет нового файла !"
   //Поиск "однотипных" файлов, например: с одинаковым началом в названии
   IF(STRPOS($prices[$n], $name) = 1)
      //Поиск среди них "свежего" файла, например: по дате, по времени
      IF(STRPOS($prices[$n], $_date_) > 0)
         $price = $prices[$n]
         $n = ARRSIZE($prices)
      END_IF
   END_IF
END_CYC

//Если искомого файла "Нет" - останов
SWITCH(STRPOS($price, "Нет"))
CASE(1)
   HINTPOPUP($price, "Файл НЕ найден:")
   WAIT(3)
   HALT
DEFAULT
   HINTPOPUP($price, "Файл найден:")
   WAIT(2)
END_SWITCH


//------------------------- Разблокировть файл (Office 2016) -------------------
//------------------------- Работа в проводнике Windows
EXECUTE("C:\Windows\explorer.exe\")
WAIT(1)
WNDSETINFO(WNDFIND("Этот компьютер"), 0, 0, 1440, 862)
WAITMS(500)

//Переключение языка на RU
SETKBLAYOUT(WNDFIND("Этот компьютер"), 1049)
WAIT(1)

//Папка загрузки
KEYDOWN(#F4)
WAITMS(100)

KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#A)
WAITMS(50)
KEYUP(#CTRL)
WAITMS(100)

//Вставить путь к папке. Имя пользователя: "User"
TOCLIP("C:\Users\User\Downloads\")

KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#V)
WAITMS(50)
KEYUP(#CTRL)
WAITMS(300)

KEYPRESS(#ENTER)
WAIT(1)

//Окно поиска
KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#F)
WAITMS(50)
KEYUP(#CTRL)
WAITMS(500)

//Вставить имя найденного файла
TOCLIP($price)

KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#V)
WAITMS(50)
KEYUP(#CTRL)
WAIT(1)

KEYPRESS(#ENTER)
WAIT(1)
//------------------------- перейти к файлу и разблокировать
KEYPRESS(#DOWN)
WAIT(1)

KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#A)
WAITMS(50)
KEYUP(#CTRL)
WAIT(1)

KEYDOWN(#ALT)
WAITMS(50)
KEYPRESS(#ENTER)
WAITMS(50)
KEYUP(#ALT)
WAIT(1)

//Разблокировать: "З" (RU)
KEYPRESS(80)
WAITMS(100)

KEYPRESS(#ENTER)
WAIT(1)

//Закрыть проводник
KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#W)
WAITMS(50)
KEYUP(#CTRL)
WAIT(2)

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

Code: (clickermann) [Select]
//------------------------- Разблокировть файл (Office 2016) -------------------
EXECUTE("C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe")
WAITMS(100)

KEYSTRING(STRCONCAT(" unblock-file -path C:\Users\User\Downloads\", $price))
KEYPRESS(#ENTER)
WAITMS(100)

KEYSTRING("exit")
KEYPRESS(#ENTER)
WAITMS(100)



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

Code: (clickermann) [Select]
*   *   *

$file = STRCONCAT("E:\PRICE\", $_date_d, $_date_m, $_date_y, "\1.xml")

TOCLIP($file)
WAITMS(200)
//------------------------- Сохранить как
KEYDOWN(#ALT)
WAITMS(50)
KEYPRESS(#F2)
KEYUP(#ALT)
WAITMS(300)
//------------------------- Вставить имя файла
KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#V)
KEYUP(#CTRL)
WAITMS(300)
//------------------------- подтвердить
KEYPRESS(#ENTER)
WAIT(10)

HALT


Отвечаю сам же на свой вопрос, а может и ещё кому пригодится...

Code: (clickermann) [Select]
// Сохранить файл из Excel
// на другой диск
// с созданием новой папки
// с новым именем файла

SETKBLAYOUT(WNDFIND("price.xlsx - Excel"), 1033)
WAITMS(200)
//------------------------- Вызвать окно "Сохранение документа"
KEYDOWN(#ALT)
WAITMS(50)
KEYPRESS(#F2)
KEYUP(#ALT)
WAIT(3)
//------------------------- Указанная папка (диск):
TOCLIP("D:\Price\")
WAITMS(100)
//------------------------- Вставить имя указанной папки (диска) для перехода
KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#V)
KEYUP(#CTRL)
WAITMS(200)
KEYPRESS(#ENTER)
WAIT(3)

//------------------------- Сформировать имя новой подпапки (например: по дате)
TOCLIP(STRCONCAT($_date_d, $_date_m, $_date_y))
WAITMS(100)
//------------------------- Создать подпапку
KEYDOWN(#CTRL)
WAITMS(50)
KEYDOWN(#SHIFT)
WAITMS(50)
KEYPRESS(#N)
KEYUP(#SHIFT)
KEYUP(#CTRL)
WAIT(1)
//------------------------- Вставить имя новой подпапки
KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#V)
KEYUP(#CTRL)
WAITMS(200)
KEYPRESS(#ENTER)
WAITMS(200)
KEYPRESS(#ENTER)
WAIT(3)

//------------------------- Перейти в окно "Имя файла"
KEYPRESS(#TAB)
WAITMS(100)
KEYPRESS(#TAB)
WAITMS(100)

SETKBLAYOUT(WNDFIND("price.xlsx - Excel"), 1049)
WAITMS(200)
//------------------------- Сформировать имя сохраняемого файла (по времени)
TOCLIP(STRCONCAT($_time_h, $_time_m, $_time_s))
WAITMS(100)
//------------------------- Вставить имя сохраняемого файла
KEYDOWN(#CTRL)
WAITMS(50)
KEYPRESS(#V)
KEYUP(#CTRL)
WAITMS(200)
KEYPRESS(#ENTER)
WAIT(1)

Да, есть проблема нарваться на уже существующую папку, но если посидеть немного, то можно и её решить...

21
Quote
Жаль только что при открытом файле .csv в Екселе, кликер не может в него запись делать, ошибку выдает.

В принципе, пару месяцев назад я именно так и делал, вёл запись с браузера, окно которого находилось сверху, непосредственно с помощью Автокликера в файл Excel (окно которого было открыто внизу) по строкам и столбцам, с помощью "горячих" клавиш, но когда насытился зрелищем "ух ты, как оно клёво работает", то перешёл на более быстрый и правильный способ писать всё сразу в два файла и потом издеваться уже над одним, всегда имея копию в .txt
Самый простой способ получить файл .csv из .txt - это конечно же просто изменить его расширение )))

22
Quote
И правильно учитываются экранированные разделители?
.csv от Microsoft программ друг друга не понимают. Сохраняешь как "csv разделитель запятые", на выходе - разделитель точка с запятой.
Перенос строк CRLF. Перенос строк внутри ячейки просто LF

Я парсю текст с браузера. Разделителем текста в строке (для дальнейшей разбивки на столбцы в Excel) служит не ";" а "|". Хотя бы потому, что в моём тексте точка с запятой встречаются, да и в плане наглядности "|" намного лучший разделитель...
Дальше с текстом работаю в Excel исключительно с помощью "горячих" клавиш... Как пример, разделить текст:

Code: (clickermann) [Select]
excel:
//------------------------- Закрыть окна Clickermann и Cyberfox ----------------
WNDSTATE(WNDFIND("Редактор - C:\Clickermann\"), 0)
WAITMS(300)
WNDSTATE(WNDFIND("Cyberfox"), 0)
WAITMS(300)

//========================= ОБРАБОТКА ТЕКСТА В EXCEL ===========================
//------------------------- Открыть файл. Расширить окно. Назначить язык En -----
EXECUTE("input.csv")
WAIT(1)

WNDSETINFO(WNDFIND("input.csv - Excel"), 0, 0, 1440, 862)
WAIT(1)

SETKBLAYOUT(WNDFIND("input.csv - Excel"), 1033)
WAIT(1)
//------------------------- Вкладка Данные. Текст по столбцам ------------------
// выделить столбец до конца вниз
KEYDOWN(#CTRL)
WAITMS(50)
KEYDOWN(#SHIFT)
WAITMS(100)
KEYPRESS(#DOWN)
KEYUP(#SHIFT)
KEYUP(#CTRL)
WAIT(1)
// выбрать из закладки данные текст по столбцам
KEYDOWN(#ALT)
WAITMS(50)
KEYPRESS(192)
KEYUP(#ALT)
WAIT(1)
KEYPRESS(#9)
WAIT(1)

SETKBLAYOUT(WNDFIND("input.csv - Excel"), 1049)
WAIT(1)

KEYPRESS(#H)
WAITMS(300)
KEYPRESS(#TAB)
WAITMS(200)
KEYPRESS(#TAB)
WAITMS(300)
KEYPRESS(#ENTER)
WAIT(1)

KEYPRESS(#L)
WAITMS(500)
SETKBLAYOUT(WNDFIND("input.csv - Excel"), 1033)
WAIT(1)
KEYDOWN(#SHIFT)
WAITMS(50)
KEYPRESS(220)
KEYUP(#SHIFT)
WAIT(1)
KEYPRESS(#ENTER)
WAITMS(500)
KEYPRESS(#ENTER)
WAIT(1)
//------------------------- Перейти на стиль ссылок R1C1
KEYPRESS(#ALT)
WAIT(1)
KEYPRESS(65)
WAITMS(500)

KEYPRESS(#V)
WAIT(1)
KEYPRESS(#DOWN)
WAITMS(500)
KEYPRESS(#TAB)
WAITMS(300)
KEYPRESS(#1)
WAITMS(500)
KEYPRESS(#ENTER)
WAIT(1)

Ну понятно, что это всего лишь часть кода, весь код больше 500 строк... и в основном это конечно работа в Excel. Я перевёл решение всех однотипных нудных повторяющихся заданий на Автокликер, а дальше уже максимально обработанный файл всё равно приходится проверять.
Задержки большие, согласен, но при меньших может что-то не срабатывать, поэтому для себя дешевле посидеть лишнюю минуту и подождать, чем потом вылавливать косяки... (((

У меня это работает на Win 8.1 + Microsoft Office 2016.

Да... разделяю данные "|" перед записью в файл:

Code: (clickermann) [Select]
$str = TFCOUNT("in.txt")

   //------------------------- записать данные ---------------------------------
   $txt = "|"
 
   IF($str > 0)
      $i = 0
      FOR($n = 0, $n < $str)
         IF(STRLEN(STRREADLN("in.txt", 1)) > 2)
            $arr[$n] = STRREADLN("in.txt", 1)
            WAITMS(100)
            $txt = STRCONCAT($txt, $arr[$n], "|")
            WAITMS(100)
            END_IF
         ELSE
            $n = $n - 1
         END_IF
         TFDelete("in.txt", 1)
         WAITMS(100)
         INC($i)
         IF($i = $str)
            $n = $str
         END_IF
      END_CYC
     
      UNDEFINE($arr)

   END_IF
   
   $txt = STRCONCAT($p, "|", $art, "|", $url, "|", $pho, $txt)
   STRWRITELN("input.txt", $txt)
   WAITMS(200)
   STRWRITELN("input.csv", $txt)
   WAITMS(200)


Смысл приведённого примера:
Данные вначале записываются в файл in.txt который обрабатывается под Ваши нужды и дальше становится уже чистовой строкой для записи в другой файл input.txt (in.txt очищается при каждой итерации), в котором таких строк уже много, они и разделяются в дальнейшем на столбцы с помощью разделителя "|".

23
Quote
всё это реально, кроме формата  эксель, Clickermann обучен работать с форматом .txt

Рекомендую работать с форматом .csv вместо .txt. И "Открывать с помощью" Excel. Именно так и поступаю в подобных случаях.
Но я всегда создаю два файла: .txt (он как исходник) и .csv, который дальше коверкается формулами до неузнаваемости... 

24
Если я правильно понял, то значит функция

Code: [Select]
STRLEN ("str")
понимает, что если в строке всего два символа, то это может быть только \r\n а сам текст начинается уже с 3-го элемента ?

25
Quote
С бетта версией 4.13 такого скорее всего не будет. Но там полно других багов, например пустая строка воспринимается как две кавычки.

Чем ни пытался удалить пустые строки из текста - выдаёт "" всё равно. Пришлось использовать костыли в виде

Code: [Select]
   TFDelete("in.txt", 1)
   TFDelete("in.txt", TFCOUNT("in.txt"))

но это не вариант... иногда попадаются и в середине текста пустые строки... Придётся искать аддоны, если есть такие, которые удаляют в браузере пустые строки или скрипт искать...  :(
Кто как выходит с этой ситуации в 4.13 ?

P.S. Как вариант можно загнать каждую строку в элемент массива, потом каждый элемент массива записать в отдельный файл + индекс элемента массива к названию файла, потом проверять не пустой ли этот файл, пустые удалять. Дальше всё это обратно считывать и склеивать ))) Но это как-то криво...

Ещё как вариант
Code: [Select]
IF(STRLEN(STRREADLN("in.txt", 1)) > 2)это убирает пустые строки, но не факт, что в вашей строке не может оказаться пару символов... Хотя для тех, кто точно уверен,что у него все строки укомплектованы текстом больше, чем на пару символов, то вполне нормальное решение... И почему именно 2 символа воспринимается как пустая строка ? Что это за символы ? Может с ними можно как-то решить задачу ? Сам текст я беру с браузера, дальше запись в текстовый файл.


Code: (clickermann) [Select]
         $str = TFCOUNT("in.txt")

         $i = 0
         $txt = "|"
         
         FOR($n = 0, $n < $str)
           
            IF(STRLEN(STRREADLN("in.txt", 1)) > 2)
               $arr[$n] = StrReadln("in.txt", 1)
               WAITMS(100)
               $txt = STRCONCAT($txt, $arr[$n], "|")
               WAITMS(100)
            ELSE
               $n = $n - 1
            END_IF
           
            TFDelete("in.txt", 1)
            WAITMS(100)
           
            INC($i)
            IF($i = $str)
               $n = $str
            END_IF
           
         END_CYC
         
         UNDEFINE($arr)
         TFClear("in.txt", 1)

Примерно такой код может записать текст без пустых строк, формируя строки для Excel
Подскажите знатоки, если что не учёл, помогите "причесать" код )

26
Благодарю за ответ... У меня специфическая задача: парсинг товара с ВКантакте с последующей фильтрацией текста. Т.е. в конце я получаю готовый файл, где есть: № п/п, ссылка, ссылка на изображение, артикул товара, description товара. А потом уже нормально в Excel всё это дорабатываю, добавляю рюшечки и через модуль загоняю на сайт... С Clickermann пока знаком поверхностно, около месяца, перебрал кучу алгоритмов парсинга, исполняемый код становится всё меньше, но зато комментариев в нём и вывода промежуточных значений для контроля всё больше ))) Я не могу ошибиться и перепутать артикул товара и цену... это не танчики ) Парсить обычные интернет-магазины хоть открытые хоть закрытые намного проще, там присутствует хоть какая-то логика в выкладке материала... этот же сайт не торговая площадка, поэтому и фильтрация двойная и контроль... А тут ещё и сам сайт закрыли для доступа в нашей стране, поэтому скорость уже не та через прокси...
А кавычки или другие символы/фразы легко подменить в самом браузере, как я показал на примере выше (ссылка на текст и изменённый в браузере текст). Да и они уже не проблема, спасибо kiril подсказал, что в новой версии всё работает без проблем, поставил её.
Скрипт то мой выполняет работу и так, но... хочется оптимизировать алгоритм его работы и код, мне по крайней мере это интересно...

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

Было так:

http://prntscr.com/g7uhbj


А теперь правильно:

http://prntscr.com/g7uhvt

28
Проблему "кавычек" при копировании текста (в браузере) я для себя почти решил... Всё почти нормально работает, осталось только обработать напильником... но у же спать хочется (

29
В адресную строку браузера вставляем

Code: [Select]
data:text/html, <html contenteditable>
Либо можно приукрасить с помощью стилей "редактор" под Ваши потребности, например:

Code: [Select]
data:text/html, <style>html,body{margin: 0; padding: 0;}</style><textarea style="font-size: 1.5em; line-height: 1.5em; background: %23000; color: %233a3; width: 100%; height: 100%; border: none; outline: none; margin: 0; padding: 90px;" autofocus placeholder="wake up Neo..." />
В Clickermannе перейти на "редактор" можно с помощью "горячих клавиш":
Ctrl+Tab – Переключение на следующую вкладку, то есть на одну вправо.
Ctrl+Shift+Tab – Переключение на предыдущую вкладку, то есть на одну влево.
Окна "редакторов" можно создать для удобства, как слева так и справа от основного окна, в котором работаете.

Как сие можно использовать на практике ? Думаю, что можно окна "редакторов" использовать, например, в качестве буфера для хранения текста, используя только браузер и Clickermann, не вызывая других программ типа редакторов или менеджеров буфера обмена... Несложно будет набросать простенький скрипт.

Набор "горячих клавиш", которые также могут пригодиться при этом:
Ctrl+T – Открыть новую вкладку.
Ctrl+L, Alt+D, F6 – Выделить текст в адресной строке.
Ctrl+1-8 – Переключение на вкладку, положение которой на панели вкладок соответствует нажатой вами цифре.
Ctrl+9 – Переключение на последнюю вкладку.
Ctrl+Tab – Переключение на следующую вкладку, то есть на одну вправо.
Ctrl+PageDown  – Переключение на следующую вкладку, то есть на одну вправо.
Ctrl+Shift+Tab – Переключение на предыдущую вкладку, то есть на одну влево.
Ctrl+PageUp – Переключение на предыдущую вкладку, то есть на одну влево.
Ctrl+W - Закрыть текущую вкладку.
Ctrl+F4 – Закрыть текущую вкладку.
Ctrl+Shift+T – Открыть последнюю закрытую вкладку.
Ctrl+O – Открыть файл.
Ctrl+S – Сохранить файл.


30
Благодарю за подсказку... так всегда получается, когда сначала делаешь, а потом внимательно читаешь справку )))

Code: (clickermann) [Select]
SUB(ctrl_ac)
   TOCLIP("") // очистить буфер
   WAITMS(50)
   
   LCLICK($X, $y) // стать на страницу
   WAITMS(100)
   
   KEYDOWN(#CTRL) // выделить
   WAITMS(50)
   KEYPRESS(#A)
   KEYUP(#CTRL)
   WAITMS(50)
   
   KEYDOWN(#CTRL) // копировать
   WAITMS(50)
   KEYPRESS(#C)
   KEYUP(#CTRL)
   WAITMS(200)
END_SUB

 ctrl_ac() // вызвать подпрограмму выделения и копирования
   //------------------------- показать текст
   $search = "Показать"
   IF(STRPOS(FROMCLIP(), $search) ! 0)
      KEYDOWN (#CTRL)       // вызвать строку поиска
      WAITMS (50)
      KEYPRESS(#F)
      KEYUP (#CTRL)
      WAITMS(100)
     
      KEYPRESS(#DELETE) // удалить предыдущий поиск
      WAITMS(200)
     
      KEYSTRING($search) // ввести текст для поиска
      WAITMS(200)
     
      GETSCREEN
      IF_PIXEL_IN($X - 100, $y, $X, $y + 400, 7919672) // искать цвет выделения
         LCLICK($_return1, $_return2) // кликнуть по найденному
         WAITMS(200)
      END_IF
      ctrl_ac() // скопировать открытый текст
   END_IF
//>>>>>>>>>>>>>>>>>>>>>>>>> перейти на следующую страницу
   KEYPRESS(#RIGHT)
   WAITMS(100)
   *   *   *

Переделал весь скрипт, с учётом прочтённого на форуме )
И всё же, а как можно обходить кавычки, которые есть тексте, ну очень хочется копировать текст не вручную ? Я так понимаю, что необходимо, чтобы при вызове CTRL+C автоматически запускался сторонний типа менеджера буфера, который автоматически бы перехватывал и менял символы на заданные... 
И где можно подробнее почитать рекомендации по задержкам ? Я читал на форуме, что это от многих фактов зависит, от мощности компьютера, как пример... но общие то рекомендации существуют, после каких действий они уместны и какая примерно продолжительность ?
По TOCLIP("") тоже мне не всё понятно... стоит ли это делать перед CTRL+C ? Мы же фактически затираем старые данные и вносим новые в буфер при нажатии этого сочетания клавиш...

Я испозую Clickermann для парсинга текста с помощью выделения всего в браузере через CTRL+A и дальнейшей сложной фильтрации и обрезки содержимого буфера, а потом ещё и в записанном с буфера текстовом файле, пока не остается только "чистый текст". Вот нашёл ещё возможность выделения по словам сочетанием клавиш CTRL+Shift+Left, CTRL+Shift+Right... Интересно попробовать и так )))

Pages: 1 [2] 3