본문 바로가기
Python/크롤링, 스크래핑 (Selenium 등등)

[Python] Selenium 작업 시 보안 문자 해결하는 방법(모듈) imagecaptcha()

by dong_su 2024. 5. 29.

anticaptchaofficial.imagecaptcha란?

위 모듈은 보안문자(CAPTCHA) 이미지를 해독하는 기능을 제공합니다.

이 모듈을 사용하면 웹사이트에서 자동입력 방지 시스템으로 사용되는 이미지 기반 보안문자를 해독할 수 있습니다.

이 모듈을 통해 보안문자 이미지를 분석하고, 해독 결과를 반환하여 자동화된 프로세스에서 보안문자 입력 단계를 자동화할 수 있습니다.


사용 방법)

from selenium.webdriver.common.by import By
from anticaptchaofficial.imagecaptcha import imagecaptcha

# 자동입력 방지문자 스크린샷
element = driver.find_element(By.CSS_SELECTOR, '해당 요소')
element.screenshot(저장 경로)

# 보안 문자 뚫는 부분
try:
    # anticaptchaofficial 모듈의 imagecaptcha 클래스를 인스턴스화합니다.
	solver = imagecaptcha()

	# 자세한 정보를 출력하도록 설정합니다.
    solver.set_verbose(1)

    # 보안 키를 설정합니다. 이 키는 anticaptchaofficial 서비스에 액세스할 때 사용됩니다.
    solver.set_key('API_KEY')  # API_KEY 부분은 실제 API 키로 대체되어야 합니다.

    # 부드러운 식별자를 설정합니다. (0 또는 1로 설정 가능)
    solver.set_soft_id(0)

    # solve_and_return_solution 함수를 호출하여 캡차 이미지를 분석하고 해결을 시도합니다.
    res = solver.solve_and_return_solution(저장 경로)

except Exception as e:
    res = 'Failed'

 

위 코드에 에러가 나지 않는다면 변수 res에 보안문자를 해독한 결과가 할당된다.