Symfony HttpClient и Simple HTML DOM?

Ссылка скопирована
1 ответ

Использую SymfonyComponentHttpClientHttpClient для получения содержимого страницы т.к использую прокси

// Настраиваем клиент         $this->httpClient = HttpClient::create(             [                 'proxy' => $connection,             ]         );

// Настраиваем клиент $this->httpClient = HttpClient::create( [ 'proxy' => $connection, ] );

// Получаю содержимое страницы  - все нормально загружается, в переменной $web строка $web = $this->httpClient->request('GET',  'yandex.ru')->getContent();

// Получаю содержимое страницы - все нормально загружается, в переменной $web строка $web = $this->httpClient->request('GET', 'yandex.ru')->getContent();

Принудительно к строке, приводил, то же самое на выходе. $web = (string) $web;

use simplehtmldomHtmlWeb; // В $this->client библиотека $this->client->load($web); // результат null

use simplehtmldomHtmlWeb; // В $this->client библиотека $this->client->load($web); // результат null

Если передаю напрямую simple html dom - все нормально загружается, не дружит именно с форматом Symfony HttpClient.

$this->client->load($web, true, false); - с опциями, игрался, не помогло.

Дополнительно:

Ну так включите дебаггер, посмотрите, что возвращает getInfo, getHeaders, getContent и т.д.
Кто-ж знает, что у вас там за прокси, верно ли вы всё настроили. Проанализируйте хедеры, наверняка там что-то есть

Ответы:

Нужна не наугад с опциями играться, а сравнивать ответ из Symfony-клинета с тем HTML который получается успешно обработать.

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Юрий Linux Ответ

Symfony HttpClient и Simple HTML DOM - это два различных инструмента для работы с веб-ресурсами, но они имеют разные функциональные возможности и применение.

Symfony HttpClient - это компонент Symfony, который предоставляет удобный способ взаимодействия с внешними HTTP-сервисами. Он предоставляет возможность отправлять HTTP-запросы, получать HTTP-ответы, работать с куками и заголовками запроса. Symfony HttpClient поддерживает асинхронные запросы, параллельные запросы и обработку большого объема данных. Он предоставляет удобный API для работы с HTTP-запросами и позволяет легко интегрировать его в проекты Symfony.

Simple HTML DOM - это библиотека PHP, которая предоставляет простой и удобный способ парсинга HTML-страниц. Она позволяет легко получать данные из HTML-документов, обрабатывать DOM-структуру, находить элементы по CSS-селекторам и выполнять другие операции с HTML-кодом. Simple HTML DOM удобен для скрапинга данных с веб-сайтов, извлечения информации из HTML-разметки и работы с контентом веб-страниц.

Symfony HttpClient и Simple HTML DOM могут использоваться вместе для создания мощных и гибких веб-приложений. Например, Symfony HttpClient может отправлять запросы к внешним сервисам для получения данных, а Simple HTML DOM может использоваться для парсинга и обработки полученной информации. Таким образом, комбинирование этих инструментов позволяет создавать сложные и функциональные приложения для работы с веб-ресурсами.

В заключение, Symfony HttpClient и Simple HTML DOM - это два различных инструмента, которые могут дополнять друг друга и использоваться в совместных проектах для эффективной работы с веб-ресурсами. Они предоставляют удобные и мощные средства для отправки HTTP-запросов, обработки HTML-кода и работы с веб-сервисами.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно