Skip to content

Commit

Permalink
Merge branch 'master' into RC-2749-add-links-to-documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
kratzky authored Jun 17, 2024
2 parents 4fb49db + c536a88 commit 5a187dc
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 13 deletions.
27 changes: 23 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ The easiest way to quickly integrate the 2Captcha captcha-solving service into y
- [Error handling](#error-handling)
- [Proxies](#proxies)
- [Async calls](#async-calls)
- [Examples](#examples)

## Installation

Expand Down Expand Up @@ -116,7 +117,7 @@ result = solver.normal('https://site-with-captcha.com/path/to/captcha.jpg', para
<sup>[API method description.](https://2captcha.com/2captcha-api#audio)</sup>

To bypass an audio captcha (mp3 formats only) use the following method.
You must provide the language as `lang = 'en'`. Supported languages are "en", "ru", "de", "el", "pt".
You must provide the language as `lang = 'en'`. Supported languages are "en", "ru", "de", "el", "pt", "fr".

```python
result = solver.audio('path/to/captcha.mp3', lang = 'lang', param1=..., ...)
Expand Down Expand Up @@ -377,7 +378,11 @@ result = solver.tencent(app_id="197326679",
## Other methods

### send / get_result
These methods can be used for manual captcha submission and answer polling.
These methods can be used for manual captcha submission and answer polling. The `send()` method supports sending any captcha
type, to specify the captcha type you must send value `method` manually, for example `method='hcaptcha'` for solving hCapthca.
You can find the value of the `method` parameter in the [API documentation](https://2captcha.com/2captcha-api).

Example for solving Normal captcha manually:
```python
import time
. . . . .
Expand All @@ -386,6 +391,17 @@ import time
id = solver.send(file='path/to/captcha.jpg')
time.sleep(20)

code = solver.get_result(id)
```
Example for solving hCaptcha manually:
```python
import time
. . . . .
id = solver.send(sitekey='41b778e7-8f20-45cc-a804-1f1ebb45c579',
url='https://2captcha.com/demo/hcaptcha?difficulty=easy',
method='hcaptcha')
print(id)
time.sleep(20)
code = solver.get_result(id)
```

Expand Down Expand Up @@ -425,7 +441,7 @@ except TimeoutException as e:
### Proxies

You can pass your proxy as an additional argument for methods: recaptcha, funcaptcha, geetest, geetest v4, hcaptcha,
keycaptcha, capy puzzle, lemin, atbcaptcha, turnstile, amazon waf, mtcaptcha, friendly captcha, cutcaptcha.
keycaptcha, capy puzzle, lemin, atbcaptcha, turnstile, tencent, amazon waf, mtcaptcha, friendly captcha, cutcaptcha.
The proxy will be forwarded to the API to solve the captcha.

We have our own proxies that we can offer you. [Buy residential proxies] for avoid restrictions and blocks. [Quick start].
Expand Down Expand Up @@ -456,6 +472,8 @@ async def captchaSolver(image):

captcha_result = asyncio.run(captchaSolver(image))
```
## Examples
Examples of solving all supported captcha types are located in the [examples] directory.


[2Captcha]: https://2captcha.com/
Expand All @@ -466,4 +484,5 @@ captcha_result = asyncio.run(captchaSolver(image))
[examples directory]: /examples
[asyncio]: https://docs.python.org/3/library/asyncio.html
[Buy residential proxies]: https://2captcha.com/proxy/residential-proxies
[Quick start]: https://2captcha.com/proxy?openAddTrafficModal=true
[Quick start]: https://2captcha.com/proxy?openAddTrafficModal=true
[examples]: ./examples
12 changes: 6 additions & 6 deletions examples/recaptcha_v2_options.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@
sitekey='6LdO5_IbAAAAAAeVBL9TClS19NUTt5wswEb3Q7C5',
url='https://2captcha.com/demo/recaptcha-v2-invisible',
invisible=1,
enterprise=0
# proxy={
# 'type': 'HTTPS',
# 'uri': 'login:password@IP_address:PORT'
# }
)
enterprise=0,
# datas="bM-8CwwOmqyYCLWatmabvfyYR97ytF95tgu...",
# proxy={'type': 'HTTPS',
# 'uri': 'login:password@IP_address:PORT'
# }
)

except Exception as e:
sys.exit(e)
Expand Down
2 changes: 1 addition & 1 deletion twocaptcha/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@
"""

__author__ = '2captcha'
__version__ = '1.2.5'
__version__ = '1.2.6'
11 changes: 9 additions & 2 deletions twocaptcha/solver.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,7 +361,7 @@ def capy(self, sitekey, url, **kwargs):
api_server : str, optional
The domain part of script URL you found on page. Default value: https://jp.api.capy.me/.
version : str, optional
The version of captcha task: puzzle (assemble a puzzle) or avatar (drag an object). Default: puzzle.
The version of captcha task: "puzzle" (assemble a puzzle) or "avatar" (drag an object). Default: puzzle.
softId : int, optional
ID of software developer. Developers who integrated their software with 2Captcha get reward: 10% of
spendings of their software users.
Expand Down Expand Up @@ -643,11 +643,16 @@ def turnstile(self, sitekey, url, **kwargs):
Value of sitekey parameter you found on page.
url : str
Full URL of the page where you see the captcha.
useragent : str
User-Agent of your browser. Must match the User-Agent you use to access the site.
Use only modern browsers released within the last 6 months.
action : str. optional
Value of optional action parameter you found on page, can be defined in data-action attribute or passed
to turnstile.render call.
data : str, optional
The value of cData passed to turnstile.render call. Also can be defined in data-cdata attribute.
pagedata : str, optional
The value of the chlPageData parameter when calling turnstile.render.
softId : int, optional
ID of software developer. Developers who integrated their software with 2Captcha get reward: 10% of
spendings of their software users.
Expand Down Expand Up @@ -874,8 +879,10 @@ def send(self, **kwargs):
Parameters
_________
method : str
The name of the method must be found in the documentation https://2captcha.com/2captcha-api
kwargs: dict
All captcha params
Returns
"""
Expand Down

0 comments on commit 5a187dc

Please sign in to comment.