Как решить проблему python селен 2captcha? - PullRequest
0 голосов
/ 21 февраля 2020

Вот мой код.

while True:

        username_box = self.driver.find_element_by_xpath(
            '//*[@id="snapname"]')
        username_box.send_keys('xxxx')
        sleep(2)
        age_select = Select(self.driver.find_element_by_id('age'))
        age_select.select_by_value(random.choice(age_values))
        sleep(2)
        gender_select = Select(self.driver.find_element_by_id('gender'))
        gender_select.select_by_value('female')
        sleep(2)
        add_me_btn = self.driver.find_element_by_id('submitBtn')
        add_me_btn.click()

        try:

            logout = self.driver.find_element_by_xpath(
                '//*[@id="wrap"]/div[1]/div/div[2]/ul/li/a')
            logout.click()
            sleep(2)
            logout1 = self.driver.find_element_by_xpath(
                "//*[@id='wrap']/div[1]/div/div[2]/ul/li/ul/li/a")
            logout1.click()
            sleep(5)

        except:

            service_key = 'Service key here'
            google_site_key = 'Site key here'
            pageurl = 'Page Url Here'
            url = "http://2captcha.com/in.php?key=apikeyhere&method=userrecaptcha&googlekey=sitekeyhere&pageurl=pageurlhere"
            resp = requests.get(url)
            if resp.text[0:2] != 'OK':
                quit('Service error. Error Code' + resp.text)
            captcha_id = resp.text[3:]
            fetch_url = "http://2captcha.com/res.php?key=apikeyhere&action=get&id=" + captcha_id
            for i in range(1, 20):
                sleep(5)
                resp = requests.get(fetch_url)
                if resp.text[0:2] == 'OK':
                    break
            print('Time to solve:', time() - start_time)
            submit_url = "urlhere"
            headers = {
                'user-agent': 'Mozilla/5.0 Chrome/52.0.2743.116 Safari/537.36'}
            payload = {
                'submit': 'submit',
                'g-recaptcha-response': resp.text[3:]
            }
            resp = requests.post(submit_url, headers=headers, data=payload)

Я пытаюсь найти капчу для сайта. Я использую 2captcha для этой работы. Однако этот код не может решить проблему с картинки. Я имею в виду бот, работающий до этой колонки:

print('Time to solve:', time() - start_time)

Однако после этого возвращается начало пока l oop. Что может быть не так с этим кодом?

1 Ответ

0 голосов
/ 24 февраля 2020

Вы проверили, были ли отправлены ваши капчи на 2captcha? Я имею в виду здесь: https://2captcha.com/statistics/uploads А какой у них статус, если они там есть?

...