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 - shatun

Pages: [1] 2 3
1
Когда были полоски я делал вот так:


Code: (clickermann) [Select]
/////////////////////////////////////////////////////////////////////////////
// определяем сколько картинок
WAIT(5)
WAITMS(200)     
GETSCREEN
//COLORMODE(6)
$ColorsPxls_img = PXLCOUNT (495,660, 800, 660, 15790320) // ищем указанные пиксели в области и считаем их
SCREENSHOTFIX(495,660, 800, 660, "проверка2.bmp")  // Сохроняет скриншот
LOGWRITE ("Найдено пикселей: ", $ColorsPxls_img)
$Img_capca = $ColorsPxls_img + 1
LOGWRITE ("Всего картинок: ", $Img_capca)
// определяем сколько картинок - конец
/////////////////////////////////////////////////////////////////////////////

HALT

2
Vint,
так всё дело в том, что там всё как раньше, но иногда в капче нет разделений в виде вертикальных полосок и у них иногда размер капчи в ширину меняется.
вот пример:


Тут вообще 8 картинок...
P.S. и спасибо за совет по поиску и подсчёту цвета. Прям чётко (безошибочно) работает такой метод.

3
У меня уже появилась мысль выделять вертикальную область в капче от заданной координаты - например шириной в 5 пикселей и смотреть есть в этой области пиксели кроме белых. Если есть, значит эта область попадает на картинку и можно считать, что это первая картинка. Дальше двигать правее эту область по координатам  и таким образом посчитать сколько картинок. Только вот как подступиться к реализации пока не хватает моих знаний (((

4
Quote
Так там же есть вертикальные полоски - границы блоков, по ним и определять. Ищешь картинку с вертикальной полосой в области капч и считаешь их количество.
Раньше были. И да, можно было их посчитать. Сейчас их нет и я думаю каким образом посчитать количество пробелов (выделяя между картинками минимально допустимое кол-во белых пикселей) чтобы понять сколько картинок. Только вот эти пробелы между картинками разные т.к. в капче может быть 5, 6 или 7 картинок да и длинна капчи как я заметил может меняться....

5
Важное дополнение... На разных страницах ширина капчи может меняться.

6
Дели на 5 зон и считай цвета по зонам. Если картинки не пережимаются и корректно поворачиваются, то значения совпадут. Даже если там не чётко в разумных пределах, ну будешь сравнивать с определённым допуском. Большинство картинок без труда отличишь. Могут попасться близкие пары, но цветов мало, так что тоже отличишь.

В данном случае, думаю всё просто.

Ты прав. Неделю назад пришлось вернуться к этой задачке и всё оказалось достаточно просто.
При помощи PXLCOUNT считал сколько цветов в области и далее сравнивал количество.
Code: [Select]
$ColorsPxls_one = PXLCOUNT ($x-120,$y-60, $x-70, $y-10, 4144959)У меня с этой капчей ещё одна засада... подскажите пожалуйста каким образом (если можно готовым куском кода) выяснить сколько картинок на капче? Просто их иногда бывает 5 или 6. А на видео видел, что и 7 картинок в капче может быть. Просто в зависимости от кол-ва картинок я выбираю другие координаты для подсчёта цветов каждой картинки.

7
Quote
она так нарисована или отмасштабирована
это сохранённые картинки которые сохранялись при  помощи
Code: [Select]
      COLORMODE(6)
      SCREENSHOTFIX($x+45,$y+45, $x+90, $y+90, "2.bmp")
вот полностью кусок скрина капчи (как есть без сжатий)

процент совпадения очень часто ставлю 93-95 ... от настроения, а так они нормально ищутся :)
P.S. если открыть эту картинку на postimages.org  https://i.postimg.cc/d1c44CHJ/1.jpg то видно реальную картинку (без сжатия). Странно почему немного искажается картинка, я её заливал и устанавливал параметр - без сжатия.

8
Покажи, что за картинки хоть. Может есть другой способ чтоб не искать 5 * 4 * 3 = 60 вариантов. Цвета там посчитать основные.
в данном случае только чёрные и белые цвета, но идея очень интересная.

пишут - Папка upload заполнена. Попробуйте файл меньшего размера или свяжитесь с администратором.
Файл 11КБ, закинул на postimges

странно, капча вроде простейшая, но на некоторых ресурсах её сейчас устанавливают взамен рекапчи...

9
Есть простая капча в которой  меняются картинки (их 5 шт). Раньше нужно было посчитать каких картинок меньше на ту и кликнуть.
Делал очень примитивно, но работало...
Code: (clickermann) [Select]
WAIT(5)
   // поиск изображения Img.bmp в области 700,400 - 1200,700
   GETSCREEN
   COLORMODE(6)
   scanpicture($var, 700,400, 1200,700, "Img.bmp")
   WAIT(1)
   
   // вывод массива, содержащего результаты поиска
   while (arrsize($var) > 0)
      $y = arrpop($var)
      $x = arrpop($var)
   end_cyc
   
   LOGWRITE ("найдены координаты ",$x,":", $y)
   
   GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
   COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
   SCREENSHOTFIX($x,$y+50, $x+40, $y+90, "1.bmp")  // Сохроняет скриншот 1 картинки
   GETSCREEN
   COLORMODE(6)
   IF_PICTURE_IN ($x+50,$y+50,$x+240,$y+100, "1.bmp", -1, 93) //поиск картинки
      WAITMS(500)
      GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
      COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
      SCREENSHOTFIX($x+45,$y+45, $x+90, $y+90, "2.bmp")
      WAITMS(500)
      GETSCREEN
      COLORMODE(6)
      IF_PICTURE_IN ($x+90,$y+45, $x+240,$y+100, "2.bmp", -1, 93) //поиск картинки
         WAITMS(500)
         GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
         COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
         SCREENSHOTFIX($x+95,$y+45, $x+140,$y+90, "3.bmp")
         WAITMS(500)
         GETSCREEN
         COLORMODE(6)
         IF_PICTURE_IN ($x+140,$y+40,$x+240,$y+100, "3.bmp", -1, 93) //поиск картинки
            WAITMS(500)
            GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
            COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
            SCREENSHOTFIX($x+140,$y+40,$x+190,$y+90, "4.bmp")
            WAITMS(500)
            GETSCREEN
            COLORMODE(6)
            WAITMS(500)
            IF_PICTURE_IN ($x,$y+40, $x+140,$y+90, "4.bmp", -1, 93) //поиск картинки
               GETSCREEN // Clickermann помещает в свой графический буфер скриншот экрана
               COLORMODE(6) // Применяет к этому скриншоту режим COLORMODE
               SCREENSHOTFIX($x+190,$y+40,$x+240,$y+90, "5.bmp")
               WAITMS(500)
               GETSCREEN
               COLORMODE(6)
               IF_PICTURE_IN ($x,$y+40, $x+140,$y+90, "5.bmp", -1, 93) //поиск картинки
                  WAITMS(500)
                  LCLICK($x+110,$y+60)
                  LOGWRITE ("найдено 5")
               END_IF
            ELSE // "ИНАЧЕ"
               LCLICK($x+160,$y+60)
               LOGWRITE ("найдено 4")
            END_IF
         ELSE // "ИНАЧЕ"
            LCLICK($x+115,$y+65)
            LOGWRITE ("найдено 3")
         END_IF
      ELSE // "ИНАЧЕ"
         LCLICK($x+65,$y+65)
         LOGWRITE ("найдено 2")
      END_IF
   ELSE // "ИНАЧЕ"
      LCLICK($x+20,$y+70)
      LOGWRITE ("найдено 1")
   END_IF
Сейчас усложнили задачу:
1.  теперь некоторые картинки повёрнуты на 90, 180, 270 градусов и вот никак не найду какой командой мне их перевернуть.
2. иногда картинки зеркально отображены и тоже могут быть повёрнуты на 90, 180, 270 градусов, тоже не найду какой командой сделать зеркальное отображение картинки перед поиском.

10
Большое спасибо за помощь!
блин - INT(STRCONCAT(...) попадалось ни раз на глаза, но никак не думал, что это то что мне нужно.
Quote
Если, Вы до сих пор этого не заметили, то подскажу
методом тыка и случайного подбора понял, но на всякий случай решил уточнить :).
А вообще особо не заморачивался с цифрами, в основном фокус был только на пиксели и картинки. Использовал кликер на 100 часть от его возможностей (может и меньше) только сейчас начал глубже копать.
Ещё раз спасибо!

11
Вот такой простой вопрос, но никак не найду на него решение.
В поиске искал, но безрезультатно.

Задача такая:
1. Есть две переменные например $a и $b
2. $a = 1 и $b=2
3. Мне нужно их объединить в переменной (например в $c) чтобы получилось число 12 как это сделать?
Понимаю, что решение очень простое, но никак не найду его ((
Ну и дополнительный вопрос по числам только с запятой. Если  ставлю $c= $a , $b мне выдаёт 1.2 Это правильно для дальнейших вычислений или запятую нужно как-то иначе ставить?

12
Кстати, чисто для расширения кругозора, а причем здесь стратегии Мартингейла? Это же вроде про ставки и их повышение и при использовании с лимитами она не дает выигрыша
Vint, напомнил про стратегию, чтобы я не заигрывался. Он прочитал между строк (там в логах написано про ставки) и понял, что пытаюсь в казино скрипт прикрутить... и по сути был прав. Только можно играть на свои, а можно на дроп.

И конечно Большое спасибо за наводку. Ардуинки без дела валялись, теперь есть куда применить.

13
Спасибо за советы
1. после запуска скрипта активируйте целевое окно киком
- не помогло..
2. #ps2_keyboard
блин умаялся... нашёл в одной теме:
Quote from: Vint
Ну так одних #ps2_keyboard и #ps2_mouse мало. Ещё сами устройства ps2 должны быть.
клавы ps2 нет.. поэтому тоже отпадает
3. экранная клавиатура
- остался единственный вариант, но клавиатура перекрывает часть экрана.
P.S. включение экранной WIN+Ctrl+0
и к сожалению, экранную тоже блокируют.
P.S. И перестань думать, что на нормальных ресурсах нет противодействия стратегии Мартингейла.
Это я хорошо понимаю. Также понимаю, что казино всегда выигрывает. Здесь другой случай ;)

14
Добрый день.
Пытаюсь сделать простейшие нажатия клавиш при помощи кликера, но на сайте нажатия клавиш не реагируют.
С клавиатуры всё вроде работает нормально. Попытался с привязкой к окну (сайту) тоже не работает. Это защита от кликера?

Для начала пробовал в блокноте простейший код и вроде всё работает, а на сайте таки нет. Можно как-нибудь обойти защиту?

Code: [Select]
WAIT(RND(1,4))
LOGWRITE ("пауза")

IF_PIXEL_IN(1030,250, 1060, 270, 6041850, 4729245)
   LOGWRITE ("нашли красный пиксель 6041850 или 4729245")
   KEYDOWN(#D)  // зажали D
   WAITMS(RND(180,220))
   KEYUP(#D)   // отпустили D
   LOGWRITE ("удвоили ставку")
   WAITMS(RND(180,220))
END_IF

WAITMS(RND(180,220))
KEYDOWN(#SPACE)
WAITMS(RND(180,220))
KEYUP(#SPACE)
LOGWRITE ("сделали ход")

15
Спасибо.
Я видел эту тему и кстати кодом движением курсора от Oraven давно пользуюсь, но даже не думал, что речь шла про такую капчу. Да и код при помощи которого пытались решить такую капчу не видел (( Если я правильно понял решения не найти т.к. собираются данные и бот распознаётся.

Pages: [1] 2 3