Нужны идеи, я работал с внешним API (Path of Exile) и случайно достиг макс. лимит запросов, поэтому мой vServer теперь заблокирован (Cloudflare). Когда я теперь хочу получить доступ к API, я получаю следующее
"Еще один шаг. Пожалуйста, пройдите проверку безопасности, чтобы получить доступ к www.pathofexile.com"
ecetera ecetera, то теоретически приходит Google Captcha.
Проблема в том, что мне нужен графический браузер для решения капчи/проверки безопасности, верно? Что было бы лучшим решением для решения капчи сейчас? Я думал о каком-то способе туннелировать свой собственный браузер и притворяться сервером, возможно ли это? Если да, то какие ключевые слова в Google помогут.
Или кто-нибудь предложит еще более простое решение, которое будет работать только на консоли? Или с помощью простого php-скрипта, например (file_put_contents во временном файле, а затем помещая его в iframe, но предварительно заменяя некоторые URL-адреса/пути?)
Думаю проблема не в коде, а тут
$realm = "pc";
$league = "Standard";
$uiagent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/32.0.1700.107 Chrome/32.0.1700.107 Safari/537.36';
$poeurl = 'https://www.pathofexile.com/character-window/get-stash-items?league=' . $league . '&realm=' . $realm . '&accountName=' . $_COOKIE["accountname"] . '&tabs=0&tabIndex=' . $_GET['no'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $poeurl);
curl_setopt($ch, CURLOPT_USERAGENT, $uiagent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'POESESSID');
curl_setopt($ch, CURLOPT_COOKIEFILE,'/var/www/vhosts/XXXXXXXXX.de/www/html/poe/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIE, "POESESSID=b34637XXXXXXXXXXXXXXX");
curl_setopt($ch, CURLOPT_COOKIEFILE, '/var/www/vhosts/XXXXXXXXX.de/www/html/poe/cookie.txt');
$answer = curl_exec($ch);
if (curl_error($ch)) {
echo curl_error($ch);
} else {
echo $answer;
file_put_contents(getcwd() . "/cache/" . $_COOKIE["accountname"] . "/stash-" . $_GET['no'] . ".json", $answer);
}