Clickermann расопзнание капчи при помощи AGClient v1.2 Печать
15.05.14 13:59
В последнее время народ всё чаще спрашивает про антикапчу. Но внятно связать работу со своим скриптом не могут.
Хочу выложить шаблон для капчи Вконтакте. Здесь один из вариантов. Оформлена как #include

Скачиваем AGClient v1.2
Читаем инструкцию. Настраиваем, запускаем.
Вставляем в свой скрипт #include "Антикапча 0.2 ВК include"

Код: Clickermann
  1. GOSUB(capcha)// гле нужно вызываем подпрограмму проверки вылезла ли капча.

сам include (скачиваем в этом посте вместе с картинками) состоит:
Код: Clickermann
  1. SUB(capcha) //========== Ловим капчу ===========================================
  2.  
  3.   MOVE(0,0)
  4.   WAITMS(100)
  5.   GETSCREEN
  6.   IF_PICTURE_IN (0,0,$_xmax,$_ymax, "capcha_NEW.bmp",-1,80) //есть капча
  7.      $x1 = $_return1+17
  8.      $y1 = $_return2+40
  9.      $x2 = $_return1+146
  10.      $y2 = $_return2+89
  11.  
  12.      $hwnd = wndFind("AGClient v1.2") // находим окно
  13.      // последовательное задание координат
  14.      PostMessage($hwnd, 0x555, 1, $x1)
  15.      PostMessage($hwnd, 0x555, 2, $y1)
  16.      PostMessage($hwnd, 0x555, 3, $x2)
  17.      PostMessage($hwnd, 0x555, 4, $y2)
  18.  
  19.      repeat:
  20.      waitms(200)
  21.      PostMessage($hwnd, 0x555, 5, 0) // распознать
  22.      waitms(1000)
  23.  
  24.      GETSCREEN
  25.      IF_PICTURE_IN (0,0,$_xmax,$_ymax, "AGClient.bmp")
  26.         $AGC_x = $_return1-25
  27.         $AGC_y = $_return2-56
  28.         LOGWRITE("AGClient X=", $_return1, ", Y=", $_return2)
  29.      END_IF
  30.  
  31.      $pic=0
  32.      WHILE($pic=0)
  33.         GETSCREEN
  34.         IF (PXL($AGC_x, $AGC_y)=65535) // жёлтый
  35.            WAITMS(300)
  36.         END_IF
  37.         IF (PXL($AGC_x, $AGC_y)=65280) // зелёный
  38.            WAITMS(100)
  39.            $pic=1 // выходим из цикла
  40.         END_IF
  41.         IF (PXL($AGC_x, $AGC_y)=255) // красный
  42.            LOGWRITE("Не распознали")
  43.            HINTPOPUP("Не распознали")
  44.            //HALT
  45.            $pic=2
  46.         END_IF
  47.      END_CYC
  48.  
  49.      IF($pic=2) // если не распознали отправляем повторно новую капчу
  50.         TOCLIP("12345")
  51.         WAITMS(100)
  52.         GOSUB(paste)
  53.         WAITMS(1500)
  54.         GOTO(repeat)
  55.      END_IF
  56.  
  57.      GOSUB(paste)
  58.      WAITMS(300)
  59.   END_IF
  60. END_SUB
  61.  
  62. SUB(paste) //========== Вставить ===============================================
  63.   KEYDOWN (#CTRL) // Ctrl+V
  64.   WAITMS (50)
  65.   KEYDOWN (#V)
  66.   WAITMS (50)
  67.   KEYUP (#V)
  68.   WAITMS (50)
  69.   KEYUP (#CTRL)
  70.   WAITMS (50)
  71.   KEYDOWN (#ENTER)
  72.   KEYUP (#ENTER)
  73.   WAITMS (50)
  74. END_SUB
  75.  
  76.  

В указанном скрипте, если AGClient прислал, что капча не распознана, вводим что попало обновляя капчу и отсылаем заново. Если при нераспознавании нужно станавливаться, раскомментируем строку //HALT

В файле Антикапча CM4.9.zip  исправление под Clickermann 4.9+ и добавлена картинка для Win7

* Антикапча.zip (1.54 КБ - загружено 10 раз.)
* Антикапча CM4.9.zip (1.71 КБ - загружено 1 раз.)

 

источник: http://crapware.aidf.org/forum/index.php?topic=73.msg2387#msg2387

ссылка на материал: http://www.thin.kiev.ua/categoryblog/2184-clickermann-agclient.html

{jcomments on}

Последнее обновление 15.05.14 14:03