Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.11.2018, 14:18
Новичок на форуме
Отправить личное сообщение для divinat Посмотреть профиль Найти все сообщения от divinat
 
Регистрация: 16.11.2018
Сообщений: 4

Помощь по Javascript. Клик "отправить" после распознавания капчи.
Добрый день.
Задача такая: Есть плагин, который запускает окно Хрома. Дальше в сценарии плагина я прописал команду, которая запускает скрипт antigate. До этого момента все работает нормально: загружается страница, запускается распознавание капчи. но мне нужно еще чтобы после того, как капча распознана, автоматически нажималась кнопка отправить.
На сколько я понимаю, нужна всего одна строчка кода.
Я не программист, и даже этот сценарий с трудом написал. Так что не кидайте тапками.
Заранее благодарю,
Ответить с цитированием
  #2 (permalink)  
Старый 16.11.2018, 14:29
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 641

document.getElementById("айди_кнопки").click()
Ответить с цитированием
  #3 (permalink)  
Старый 16.11.2018, 16:20
Новичок на форуме
Отправить личное сообщение для divinat Посмотреть профиль Найти все сообщения от divinat
 
Регистрация: 16.11.2018
Сообщений: 4

Спасибо за быстрый ответ.
Еще момент. Важно, чтобы кнопка нажималась только после того как капча распознана. Сама кнопка существует с самого начала.
Это в процессе распознавания:

https://drive.google.com/file/d/1qpu...ew?usp=sharing

А это, когда распознана:
https://drive.google.com/file/d/1EJG...ew?usp=sharing
Ответить с цитированием
  #4 (permalink)  
Старый 16.11.2018, 16:50
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 641

setInterval(function() {
 var solved = document.querySelector('div.antigate_solver.solved')
 if (solved) {
   document.getElementById("айди_кнопки").click()
 }
}, 500) //проверяем раз в 0.5s
Ответить с цитированием
  #5 (permalink)  
Старый 16.11.2018, 17:00
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

https://developer.mozilla.org/ru/doc...tationObserver
вот это еще можно использовать для наблюдения
Ответить с цитированием
  #6 (permalink)  
Старый 16.11.2018, 23:41
Новичок на форуме
Отправить личное сообщение для divinat Посмотреть профиль Найти все сообщения от divinat
 
Регистрация: 16.11.2018
Сообщений: 4

Спасибо, Вы очень помогли.
Хотя, в этом виде скрипт почему-то не работал.

В итоге получилось как-то так:

setInterval (function() {
var element=document.querySelector('#captcha-container > form > div > div > div.antigate_solver.process');
if (!element) {document.querySelector('#captcha-container > form > button > span').click();
}
}, 500);

Оно работает.
Еще раз спасибо.
Ответить с цитированием
  #7 (permalink)  
Старый 16.11.2018, 23:48
Новичок на форуме
Отправить личное сообщение для divinat Посмотреть профиль Найти все сообщения от divinat
 
Регистрация: 16.11.2018
Сообщений: 4

Правда появилась новая проблема:
Как я уже говорил, этот скрипт внутри сценария. А сценарий запускает скрипт, но не дожидается его окончания.
Команд в этом плагине, как я понимаю, мало.
Единственная, которая относительно подходит:
waitElementLoaded — ожидание загрузки вебэлемента страницы, xpath-адрес которого указан в параметре xpath команды. Максимальное время ожидания загрузки вебэлемента (в секундах) указывается в параметре seconds команды;

Для этого нужно, чтобы по окончании скрипта, т.к. когда происходит нажатие на кнопку "Отправить" скрипт создавал новый элемент с новым xpath, которого будет дожидаться команда.

Других вариантов пока не вижу.

А создать элемент у меня не получается.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
После Добавления в Дом, не работает клик. KamalovRadik jQuery 2 02.11.2011 10:32
Как имитировать клик по элементу созданого после загрузки страницы? anoth3r jQuery 3 29.09.2011 12:22
Нужна помощь в расшифровке JavaScript Alucard456 Общие вопросы Javascript 9 03.08.2010 15:33
php + javascript, проверка капчи zhuzha Общие вопросы Javascript 10 02.06.2010 13:30
Восстановление работоспособности JavaScript после Exception в xhtml no_alex Events/DOM/Window 13 03.12.2008 13:47