PHPackages                             maxlen/anticaptcha - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. maxlen/anticaptcha

ActiveExtension[Utility &amp; Helpers](/categories/utility)

maxlen/anticaptcha
==================

Wrapper for anti-captcha.com

1380[1 issues](https://github.com/maxlen/anticaptcha/issues)PHP

Since Jan 5Pushed 9y agoCompare

[ Source](https://github.com/maxlen/anticaptcha)[ Packagist](https://packagist.org/packages/maxlen/anticaptcha)[ RSS](/packages/maxlen-anticaptcha/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

anticaptcha-php
===============

[](#anticaptcha-php)

Wrapper for anti-captcha.com

Installation:
-------------

[](#installation)

```
composer require maxlen/anticaptcha
```

### Use for captcha ImageToText:

[](#use-for-captcha-imagetotext)

```
$resCaptcha = new CaptchaService(
    $apiKey, // your apiKey from anti-captcha.com
    CaptchaService::TYPE_IMAGE_TO_TEXT,
    ['imgPath' => '/home/user/example.png'] // path to captcha image
);

echo $resCaptcha->check(); // text-result

// or

$resCaptcha->check();
echo $resCaptcha->hashResult; // text-result
```

### Use for reCaptcha:

[](#use-for-recaptcha)

```
// $html - it's html-code from $url
// $html = file_get_contents($url) or something like that

if (Captcha::isCaptcha($html)) {
    $html = self::CaptchaProc($url, $html);
    die('CAPTCHA RESOLVED');
}

private function CaptchaProc($url, $html)
{
    $resCaptcha = new CaptchaService(
        $apiKey, // your apiKey from anti-captcha.com
        CaptchaService::TYPE_NO_CAPTCHA_PROXYLESS,
        [
            'webSiteUrl' => $url,
            'html' => $html,
        ]
    );

//        echo PHP_EOL . "getWebSiteKey: " . $resCaptcha->getWebSiteKey();
//        echo PHP_EOL . "getWebSiteSToken: " . $resCaptcha->getWebSiteSToken();
//        echo PHP_EOL;
//        var_dump($resCaptcha->getResolveGetParams());

    if (!$resCaptcha->check()) {
        return false;
    }

    $resolveUrl = $url . '&g-recaptcha-response=' . $resCaptcha->hashResult;
    return file_get_contents($resolveUrl); // curl or something like that
}
```

###  Health Score

18

—

LowBetter than 8% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 90% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/970a5c554cf5e09bd886e2038b0a131306849b359579ce8ef68fda0ec72e9211?d=identicon)[maxlen](/maintainers/maxlen)

---

Top Contributors

[![maxlen](https://avatars.githubusercontent.com/u/1764950?v=4)](https://github.com/maxlen "maxlen (9 commits)")[![rapita](https://avatars.githubusercontent.com/u/22305375?v=4)](https://github.com/rapita "rapita (1 commits)")

### Embed Badge

![Health badge](/badges/maxlen-anticaptcha/health.svg)

```
[![Health](https://phpackages.com/badges/maxlen-anticaptcha/health.svg)](https://phpackages.com/packages/maxlen-anticaptcha)
```

###  Alternatives

[beyondit/opencart-extension-installer

Custom Composer Installer for installing OpenCart Extensions

1020.4k3](/packages/beyondit-opencart-extension-installer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
