Как решить кликабельную капчу как recaptcha v2 на странице регистрации с питоном и селеном?

Я создаю код селена с Python для решения капчи, которая требует нажатия на изображения "ReCaptcha V2" с 2captcha API .

пожалуйста, проверьте: https://2captcha.com/2captcha-api

Моя первая проблема - получить снимок экрана с произвольным именем, сжать его до размера менее 100 Кб и отправить с моим запросом http.

Моя вторая проблема заключается в том, как имитировать нажатия на "ОК | координата: х =39, у =59; х =252, у =72"

а как убрать изображение после капчи решено?

мой код:

from selenium import webdriver
from time import sleep, time
from PIL import Image
import requests
import time

# open signup page
browser = webdriver.Chrome('D:\chromedriver')
browser.get('http://testing-ground.scraping.pro/recaptcha')
browser.maximize_window()

# click on checkbox
recaptcha = browser.find_element_by_xpath("//*[@role='presentation']"); time.sleep(3)
recaptcha.click(); time.sleep(3)

#get screenshot
browser.get_screenshot_as_file('iamcaptchaimage.jpg')

#send http request 'post'
url = 'http://2captcha.com/in.php'
files = {'file': open('iamcaptchaimage.jpg', 'rb')}
url = 'http://2captcha.com/in.php'
files = {'file': open('iamcaptchaimage.jpg', 'rb')}
data = {'key': '***', 'method': 'post','coordinatescaptcha':'1','textinstructions':'click on fire hydrant'}
resp = requests.post(url, files=files, data=data)

if resp.ok:
    captcha_id = resp.text[3:]
    print(captcha_id)

# send http request 'get'
fetch_url = "http://2captcha.com/res.php?key=****&action=get&id=" + captcha_id
for i in range(1, 10):
    sleep(5)  # wait 5 sec.
    resp = requests.get(fetch_url)
    if resp.text[0:2] == 'OK':
        break
print(resp.text[3:])

0 ответов

Другие вопросы по тегам