Почему кнопка отправки для 2captcha отключена? - PullRequest
0 голосов
/ 21 сентября 2018

Я успешно реализовал решение для проверки капчи с помощью API 2captcha вплоть до того момента, пока я не введу ответ в скрытое текстовое поле ответа.

И вот тут оно начинается.Кнопка «продолжить» отключена, но даже когда я удаляю «отключенные» теги в коде, она не выполняет действие «логин», которое должно быть выполнено.

<button disabled="" class="tw-interactive tw-button tw-button--disabled tw-button--full-width">
    <span class="tw-button__text" data-a-target="tw-button text">
        Continue
    </span>
</button>

^ Это HTML-коддля кнопки, когда она отключена [капча не решена]

<button class="tw-interactive tw-button tw-button--full-width">
    <span class="tw-button__text" data-a-target="tw-button-text">
         Continue
    </span>
</button>

^ Это доступная кнопка «продолжить», которая работает, когда выполняется ручная капча.

Когда я меняю код сво-первых, в HTML, он включает кнопку, но не выполняет никаких действий, как я говорил ранее. Функции, такие как element.submit (), тоже ничего не делают

Я нигде не могу найти информацию об этомно я знаю, что это может быть обработано.Сайт, о котором я говорю, это Twitch.tv

Эта часть моего кода вводит ответ с картинки в текстовое поле ответа

elem=driver.find_element_by_xpath('//*[@id="g-recaptcha-response"]')
driver.execute_script('arguments[0].setAttribute("style", "width: 250px; height: 40px; border: 1px solid #c1c1c1; margin: 10px 25px; padding: 0px; resize: none; ");', elem)
print("answer: "+answer )
elem.send_keys(answer)

================ РЕДАКТИРОВАТЬ ==================

xlogin = '/html/body/div[2]/div/div/div/div[1]/form/div/div[3]/button'
recaptcha = '//*[@id="recaptcha-element-container"]/div/div/iframe'
answer=''
site_key =''
API_KEY = '#################'
stream = "ninja"
dest = "https://www.twitch.tv/" + stream

def getSiteKey(): #Gets the SITE_KEY and sets the variable
    global recaptcha,site_key
    element = driver.find_element(By.XPATH,recaptcha)
    d = element.get_attribute("src")
    trash,rest = d.split("&k=")
    site_key,trash = rest.split("&co")
    return print("Returned site key: "+site_key) 



def handleCaptcha():
    global API_KEY, site_key,dest,answer
    s = requests.Session()
    captcha_id = s.post("http://2captcha.com/in.php?key="+API_KEY+"&method=userrecaptcha&googlekey="+site_key+"&pageurl="+dest).text.split('|')[1]
    print ("Request returned captcha ID:"+captcha_id)
    recaptcha_answer = s.get("http://2captcha.com/res.php?key={}&action=get&id={}".format(API_KEY, captcha_id)).text
    while 'CAPCHA_NOT_READY' in recaptcha_answer:
            print (recaptcha_answer)#debug
            time.sleep(5)
            recaptcha_answer = s.get("http://2captcha.com/res.php?key={}&action=get&id={}".format(API_KEY, captcha_id)).text       
    recaptcha_answer = recaptcha_answer.split('|')[1]
    print("Recaptcha answer is: "+recaptcha_answer)
    answer=recaptcha_answer

https://i.imgur.com/kN16sjn.png Это вывод, который я получаю

Я попытался отредактировать код кнопки вручную в отладке браузера и не смог заставить его работать.Я удалил отключенный атрибут из самой кнопки и из класса-> tw-button - отключен

...