Форум переезжает. Функционал будет увеличен. Все для вашего удобства: НОВЫЙ ФОРУМ

Вы должны войти в систему для того, чтобы создавать сообщения и темы. » Авторизоваться

Автоматическая разгадка капчи

 

Капча из 5 иконок. Как выбрать нужную?На данный момент 5 нужная.
<span id="main_captcha" style="width: 300px ! important; float: left; margin-top: 8px;">

<a href="#"> // 1

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 2

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 3

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 4

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 5

<img class="rounded-img" onclick="record_action("LjrUnqh11kyCM+nvyBlt68+XBuDlCpk9M GxYLppu4lGDYVpacTQyNVcXPKTOgLsquHwwk4L2TXGoXTLpIZ7LqpAShpOMYbcRTq7bHg Ieo2oy2eJYPjZxwdu+mnJH/FB9|7KnCczt50eOVNIumyIYWMUF0SuQ0KExjUuR0bu+Cby4-",
510680, false, true);ready_message(true)>
</a>
</span>
Правильная появляется рандомно. Как обнулить 4 не нужные и нажать пятую нужную? Начал писать:
var captcha = content.document.querySelectorAll('a img.rounded-img'); //если сюда добавить .length, затем alert, - на экране 5
for(var i = 0; i < captcha.length; i++){
var zero = обнулить не нужные....

......
......   click() //нужную

 

 

 

 

Цитата: RISEVIK от 15.02.2017, 04:35
Капча из 5 иконок. Как выбрать нужную?На данный момент 5 нужная.
<span id="main_captcha" style="width: 300px ! important; float: left; margin-top: 8px;">

<a href="#"> // 1

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 2

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 3

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 4

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 5

<img class="rounded-img" onclick="record_action("LjrUnqh11kyCM+nvyBlt68+XBuDlCpk9M GxYLppu4lGDYVpacTQyNVcXPKTOgLsquHwwk4L2TXGoXTLpIZ7LqpAShpOMYbcRTq7bHg Ieo2oy2eJYPjZxwdu+mnJH/FB9|7KnCczt50eOVNIumyIYWMUF0SuQ0KExjUuR0bu+Cby4-",
510680, false, true);ready_message(true)>
</a>
</span>
Правильная появляется рандомно. Как обнулить 4 не нужные и нажать пятую нужную? Начал писать:
var captcha = content.document.querySelectorAll('a img.rounded-img'); //если сюда добавить .length, затем alert, - на экране 5 for(var i = 0; i < captcha.length; i++){ var zero = обнулить не нужные....

...... ......   click() //нужную

Как определишь нужную?

Цитата: Zizya от 15.02.2017, 08:56
Цитата: RISEVIK от 15.02.2017, 04:35
Капча из 5 иконок. Как выбрать нужную?На данный момент 5 нужная.
<span id="main_captcha" style="width: 300px ! important; float: left; margin-top: 8px;">

<a href="#"> // 1

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 2

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 3

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 4

<img class="rounded-img" onclick="record_zero_action(510680);ready_message(false)>
</a>

<a href="#"> // 5

<img class="rounded-img" onclick="record_action("LjrUnqh11kyCM+nvyBlt68+XBuDlCpk9M GxYLppu4lGDYVpacTQyNVcXPKTOgLsquHwwk4L2TXGoXTLpIZ7LqpAShpOMYbcRTq7bHg Ieo2oy2eJYPjZxwdu+mnJH/FB9|7KnCczt50eOVNIumyIYWMUF0SuQ0KExjUuR0bu+Cby4-",
510680, false, true);ready_message(true)>
</a>
</span>
Правильная появляется рандомно. Как обнулить 4 не нужные и нажать пятую нужную? Начал писать:
var captcha = content.document.querySelectorAll('a img.rounded-img'); //если сюда добавить .length, затем alert, - на экране 5 for(var i = 0; i < captcha.length; i++){ var zero = обнулить не нужные....

...... ......   click() //нужную

Как определишь нужную?

тяжело не видя кода тут что-то понять, но думаю тут сработает outerHTML как-то так:

var captcha = content.document.querySelectorAll('a img.rounded-img'); 
for(var i = 0; i < captcha.length; i++){ 
if(captcha[i].outerHTML.indexOf('onclick="record_action')+1){//если узел содержит  onclick="record_action
 captcha[i].click() //кликаем на него
}

Вот только не понял, что значит "обнулить", если что это обнуление можно дописать в else

Работает. Спасибо Admin. Была синтаксическая ошибка - нашел в строке

for(var i = 0; i < captcha.length; i++){ - лишняя фигурная скобка.
Теперь осталось понять что такое .outerHTML, .indexOf и +1, остальное понятно.
Цитата: RISEVIK от 15.02.2017, 19:02

Работает. Спасибо Admin. Была синтаксическая ошибка - нашел в строке

for(var i = 0; i < captcha.length; i++){ - лишняя фигурная скобка.
Теперь осталось понять что такое .outerHTML и .indexOf , остальное понятно.

все довольно просто, outerHTML это то же что и innerHTML, только возвращает не то что внутри узла, а то что снаружи, вместе со всеми потомками. Тоесть как бы читаем каждый тег таким образом.

а indexOf проверяет, есть ли строка

onclick="record_action

в этом теге. Если есть, indexOf возвращает целое число(индекс где встречается искомое) Если искомого нет - возвращается -1. Поэтому я к indexOf прибавляю 1. Если искомого нет, то -1+1=0, и условие if не выполняется. Соответственно клика на этом теге нет. Это я так записал просто для удобства.

Вот такую капчу кто-нибудь ломал ? Это на сайте seo-fast.ru (серфинг).

Я в коде ответов не нашел.

Загруженные файлы: