lantosbro / guzzlehttp-cloudflare
Bypass Cloudflare protection using GuzzleHTTP
dev-main
2023-10-17 18:59 UTC
Requires
- php: ^7.2
- ext-bcmath: *
- ext-curl: *
- guzzlehttp/guzzle: ^6.3
- lantosbro/cloudflare-bypass: dev-master
Requires (Dev)
- phploc/phploc: ^5.0
- phpmd/phpmd: ^2.4
- phpunit/phpunit: ^8.0
- sebastian/phpcpd: ^4.0
- squizlabs/php_codesniffer: ^3.2
This package is not auto-updated.
Last update: 2024-12-11 22:50:27 UTC
README
Guzzle Cloudflare Bypass
(This product is available under a free and permissive license, but needs financial support to sustain its continued improvements. In addition to maintenance and stability there are many desirable features yet to be added.)
Bypass Cloudflare DDoS protection - Please use it carefully
This package is based on KyranRana's cloudflare-bypass.
Installation
Using composer
composer require jaymoulin/guzzlehttp-cloudflare
Usage
$sUrl = 'https://thebot.net/'; $oClient = new \GuzzleHttp\Client([ 'cookies' => new \GuzzleHttp\Cookie\FileCookieJar(tempnam('/tmp', __CLASS__)), 'headers' => ['Referer' => $sUrl], ]); // 1. Create Guzzle instance $aOptions = [ 'cache' => new \CloudflareBypass\Storage($sPathToYourCacheFolder), ]; // Example for cache, this is completely optional, with $sPathToYourCacheFolder a string to your cache folder /** @var \GuzzleHttp\HandlerStack $oHandler */ $oHandler = $oClient->getConfig('handler'); $oHandler->push(\GuzzleCloudflare\Middleware::create($aOptions)); //2. ??? echo (string)$oClient->request('GET', $sUrl)->getBody(); //3. Profit!!