Skip to main content

Thoughtful Captcha Solver Package

Project description

https://img.shields.io/pypi/v/ta_captcha_solver.svg https://img.shields.io/travis/macejiko/ta_captcha_solver.svg Documentation Status

Thoughtful Captcha Solver


Installation

python3 -m virtualenv venv
source venv/bin/activate
pip install ta-captcha-solver

How to Use

  1. Make sure your browser instance is on the page with captcha or provide a correct path to image in image_source param

  2. Use TACaptchaSolver.get() method with appropriate params

  3. Call captcha.solve() method that would do all the magic


Supported Browsers

Currently only RPA.Browser.Selenium.Selenium() is supported. In future we will add a Playwright support as well


Supported Service Providers

Currently we support these:

  1. http://learn.captcha.guru/#/

  2. https://2captcha.com/2captcha-api

You should have valid API key that could be obtained from web version of service after you put some money to the account balance


Supported Captcha Types

Currently we support these:

  1. CloudFlare

  2. CloudFlare Challenge

  3. Arkose Labs Fun Captcha

  4. HCaptcha

  5. ReCaptcha v2

  6. Image Captcha


Available Settings

If param is not required and not set then this action would not be performed and you a responsible for it. E.g. if you dont provide check_xpath then you should check that captcha has been solved by you own.

Param

Required

Type

Description

captcha_type

Yes

All

One of supported captcha types

browser

Yes for ‘v2’ and ‘fun_captcha’ For ‘image’ only when image_source is not provided.

All

Supported browser instance with opened captcha page

captcha_guru_api_key

No

All

Deprecated. Use ‘service_provider_name’ + ‘service_provider_key’ instead

service_provider_name

Yes

All

Value should be: ‘captcha.guru’ or ‘2captcha’

serivce_provider_key

Yes

All

Valid API key of appropriate Service Provider

image_xpath

Yes if browser is provided

Image

Locator of <img> with captcha pic

input_xpath

No

Image

Locator of input field for token

click_xpath

No

All

Locator of submit button

check_xpath

No

All

Locator that should be verified after solving

upper

No

Image

Perform token.upper()

image_source

Yes if browser not provided

Image

Path to .png or .jpg image with captcha to solve


Examples

 from RPA.Browser.Selenium import Selenium
 from ta_captcha_solver.ta_captcha_solver import TACaptchaSolver

 browser = Selenium()
 browser.open_browser("http://url_with_captcha")

 captcha = TACaptchaSolver.get(
     captcha_type="v2",
     browser=browser,
     service_provider_name="captcha.guru",
     service_provider_key="captcha.guru API KEY",
 )
captcha.solve()
 from RPA.Browser.Selenium import Selenium
 from ta_captcha_solver.ta_captcha_solver import TACaptchaSolver

 browser = Selenium()
 browser.open_browser("http://url_with_captcha")

 captcha = TACaptchaSolver.get(
     captcha_type="image",
     browser=browser,
     service_provider_name="captcha.guru",
     service_provider_key="captcha.guru API KEY",
     image_xpath="//img[@id='demoCaptcha_CaptchaImage']",
     input_xpath="//input[@id='captchaCode']",
     click_xpath="//input[@id='validateCaptchaButton']",
     check_xpath="//span[@id='validationResult']/span[@class='correct']",
     upper=False,
 )
captcha.solve()
from RPA.Browser.Selenium import Selenium
from ta_captcha_solver.ta_captcha_solver import TACaptchaSolver

browser = Selenium()
browser.open_browser("http://url_with_captcha")

captcha = TACaptchaSolver.get(
    captcha_type="fun_captcha",
    browser=self.browser,
    service_provider_name="2captcha",
    service_provider_key="2captcha API KEY"
    check_xpath="//input[@id='username']",
)
captcha.solve()
 from ta_captcha_solver.ta_captcha_solver import TACaptchaSolver

 captcha = TACaptchaSolver.get(
     captcha_type="image",
     service_provider_name="2captcha",
     service_provider_key="2captcha API KEY",
     image_source= "C:/your-path-to-image-captcha.png",
     upper=False,
 )
captcha.solve()
token = captcha.token

Development

Prepare local dev env:

python3 -m virtualenv venv
source venv/bin/activate
pip install -r requirements.txt

Testing:

CAPTCHA_GURU_API_KEY=XXX TWO_CAPTCHA_API_KEY=YYY pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ta_captcha_solver-0.3.2.tar.gz (15.6 kB view details)

Uploaded Source

File details

Details for the file ta_captcha_solver-0.3.2.tar.gz.

File metadata

  • Download URL: ta_captcha_solver-0.3.2.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.0

File hashes

Hashes for ta_captcha_solver-0.3.2.tar.gz
Algorithm Hash digest
SHA256 052baedf45b36918d5423d047c43d1df1dc52538aa656562ab9d62e26da598a8
MD5 0260d24dd1d061cc15d8e4debd58c610
BLAKE2b-256 57fb5bc676004f175b82eba6d176cc48d1493cb520566715cf6ab6057a60a344

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page