πŸ”’ Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ recaptcha Π½Π° Python: эффСктивныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ инструмСнты

К соТалСнию, ΠΎΠ±Ρ…ΠΎΠ΄ Recaptcha Π½Π° Python являСтся Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€Π°Π²ΠΈΠ» использования сСрвиса Recaptcha. Recaptcha Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ сайтов ΠΎΡ‚ автоматичСского взаимодСйствия со стороны Π±ΠΎΡ‚ΠΎΠ². ΠžΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π΅Π΅ нСэтично ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ послСдствия.

Однако, Ссли Ρƒ вас Π΅ΡΡ‚ΡŒ Π·Π°ΠΊΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Recaptcha Π² своСм скриптС, Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ спСциализированныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Recaptcha Π½Π° Python, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ "python-recaptcha" ΠΈΠ»ΠΈ "2captcha".

pip install python-recaptcha
pip install 2captcha

ПослС установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… API для взаимодСйствия с Recaptcha.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования "python-recaptcha":

from python_recaptcha import ReCaptcha

# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра Recaptcha
recaptcha = ReCaptcha(
    site_key='your_site_key',  # ΠΊΠ»ΡŽΡ‡ сайта
    secret_key='your_secret_key',  # сСкрСтный ΠΊΠ»ΡŽΡ‡
)

# ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° Recaptcha
response = recaptcha.verify(response=request.POST.get('g-recaptcha-response'))

if response["success"]:
    # Recaptcha ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π°
    pass
else:
    # Recaptcha Π½Π΅ ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π°
    pass

НадСюсь, это ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ. Π£Π΄Π°Ρ‡ΠΈ!

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ reCAPTCHA Π½Π° Python

reCAPTCHA являСтся систСмой Π·Π°Ρ‰ΠΈΡ‚Ρ‹, которая Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Google, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ Ρ„ΠΎΡ€ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… дСйствий Π½Π° Π²Π΅Π±-сайтах. Однако, ΠΈΠ½ΠΎΠ³Π΄Π° Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ reCAPTCHA Π² своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… Π½Π° Python. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим нСсколько способов, ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

1. ИспользованиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Selenium

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Selenium прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ дСйствия Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ скрипт Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ, Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ reCAPTCHA, ввСдя ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ΄.


from selenium import webdriver
from selenium.webdriver.common.keys import Keys

# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°
driver = webdriver.Firefox()

# ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ страницы с reCAPTCHA
driver.get('ссылка Π½Π° страницу с reCAPTCHA')

# НахоТдСниС элСмСнта с reCAPTCHA ΠΈ Π²Π²ΠΎΠ΄ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…
element = driver.find_element_by_id('ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ элСмСнта')
element.send_keys('ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅')

# ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Ρ„ΠΎΡ€ΠΌΡ‹
element.submit()
    

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Selenium для управлСния Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ Firefox. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Chrome ΠΈΠ»ΠΈ Edge, ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для нахоТдСния элСмСнтов ΠΈ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ….

2. ИспользованиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ BeatifulSoup

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ с Π²Π΅Π±-страницы, Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΉ reCAPTCHA, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ BeatifulSoup для парсинга HTML-ΠΊΠΎΠ΄Π° ΠΈ извлСчСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’ этом случаС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ reCAPTCHA, Π½Π΅ взаимодСйствуя с самой систСмой.


import requests
from bs4 import BeautifulSoup

# Запрос ΠΊ страницС с reCAPTCHA
response = requests.get('ссылка Π½Π° страницу с reCAPTCHA')

# ΠŸΠ°Ρ€ΡΠΈΠ½Π³ HTML-ΠΊΠΎΠ΄Π°
soup = BeautifulSoup(response.content, 'html.parser')

# НахоТдСниС Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° страницС
data = soup.find('ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ элСмСнта').text

# ИспользованиС Π΄Π°Π½Π½Ρ‹Ρ… для Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… дСйствий
...
    

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ requests ΠΈ BeatifulSoup для получСния HTML-ΠΊΠΎΠ΄Π° Π²Π΅Π±-страницы ΠΈ извлСчСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ элСмСнты Π½Π° страницС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², прСдоставляСмых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ BeatifulSoup.

3. ИспользованиС сторонних сСрвисов

НСкоторыС сторонниС сСрвисы ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ API, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ обходят reCAPTCHA ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ Π²Π°ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти сСрвисы Π² своСм ΠΊΠΎΠ΄Π΅ Π½Π° Python, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ reCAPTCHA.


import requests

# ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° запроса ΠΊ стороннСму сСрвису
response = requests.get('ссылка Π½Π° API сСрвиса')

# Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΠΎΡ‚Π²Π΅Ρ‚Π°
data = response.json()

# ИспользованиС Π΄Π°Π½Π½Ρ‹Ρ… для Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… дСйствий
...
    

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ΄ отправляСт запрос ΠΊ API стороннСго сСрвиса ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для выполнСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… дСйствий.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠžΠ±Ρ…ΠΎΠ΄ reCAPTCHA Π½Π° Python Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ с использованиСм Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ². Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Selenium для управлСния Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ BeatifulSoup для парсинга HTML-ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ сторонниС сСрвисы, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ API. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ситуации.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ парсингу Π½Π° Python | ΠŸΠ°Ρ€ΡΠΈΠ½Π³ Π±Π΅Π· обнаруТСния | ΠŸΠ°Ρ€ΡΠΈΠ½Π³ CloudFlare | Selenium, CloudFlare

Π’Π·Π»ΠΎΠΌΠ°ΠΉ reCAPTCHA V2: РаскрываСм сСкрСты Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π Π΅ΠΊΠ°ΠΏΡ‡Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Rucaptcha.com, Puppeteer ΠΈ Headless Chrome

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ рСкурсия Π² Python? πŸ”„ Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ основы ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ рСкурсии

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ функция enumerate Π² Python? 🐍

πŸ”’ Как ΠΎΠΊΡ€ΡƒΠ³Π»ΠΈΡ‚ΡŒ число Π² Python: простой ΠΈ эффСктивный способ

πŸ”’ Как ΠΎΠ±ΠΎΠΉΡ‚ΠΈ recaptcha Π½Π° Python: эффСктивныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ инструмСнты

:point_up_2:Как ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Python: Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ sys Π² Python? 🐍

πŸ”’ Как ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ бСсконСчный Ρ†ΠΈΠΊΠ» Python while ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ бСсконСчности?