Как использовать прокси с Symfony?

259
08 февраля 2019, 14:30

Сайт парсит контент с определенного донор-сайта через CURL.
В данный момент блокировка по IP с этого сайта. Поставил CURL_PROXY. Работают только страницы, которые не используют Symfony, а на Symfony следующая ошибkа:

Fatal error: Uncaught InvalidArgumentException: Expecting a DOMNodeList or DOMNode instance, an array, a string, or null, but got "boolean". in
/var/www/user/data/www/site.ru/symfony/dom-crawler/Crawler.php:120 Stack trace:
#0 /var/www/user/data/www/site.ru/symfony/dom-crawler/Crawler.php(67):
Symfony\Component\DomCrawler\Crawler->add(false) #1
/var/www/user/data/www/site/controllers/st.php(49):
Symfony\Component\DomCrawler\Crawler->__construct(false, 'https://site.ru...')
#2 /var/www/user/data/www/site/content/index.php(50):
require_once('/var/www/user/d...') #3 {main} thrown in
/var/www/user/data/www/site/symfony/dom-crawler/Crawler.php on line 120

В коде:

use Symfony\Component\DomCrawler\Crawler;
// links
$dom = new Crawler($response, 'https://site.ru/dir/');
foreach ($dom->filter('#main div a.t-block_item') as $node)
{
    $name = trim($node->textContent);
    $uri = str_replace('https://site.ru/dir/', null, $node->getAttribute('href'));
    $uri = preg_replace_callback('%[^:@/?#&=\.]+%usD', function ($matches) {
        return urlencode($matches[0]);
    }, $uri);
    $arr['dir'][] = [
        'url' => implode('/', array_map('urldecode', explode('/', parse_url($uri, PHP_URL_PATH)))),
        'urlName' => $name
    ];
}

До блокировки по IP, всё прекрасно работало и на Symfony.

Как на нем использовать прокси?

READ ALSO
страница благодарности

страница благодарности

Всем привет такая проблема нашёл классный скрипт формы обратной связи вот он:

237
Как работают асинхронные операции?

Как работают асинхронные операции?

Если выполняется асинхронный запрос к БД, это значит что контроль над выполнением передается БД и после вызова она должна вызвать callback?

222
Функция: вставить meta description

Функция: вставить meta description

Есть сайт на WordPressВ нём таксономия companies, для неё в шаблоне есть отдельный php файл, в котором собирается темплейт

283
Отправка GET-запроса с объектом json

Отправка GET-запроса с объектом json

Подскажите как отправить GET запрос на RestAPI с json-ом

243