Laravel по-русски
      
      
    Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Добрый день.
Пытаюсь написать парсер, который берет данные со стороннего сайта.
Вот мой код:
    public function index()
   {
       $context = stream_context_create(
            array(
                "http" => array(
                    "max_redirects" => 101,
                    "header" => "User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"
                )
            )
        );
        $link = '[url]https://url.com[/url]';
        // Get html remote text.
        $html = file_get_contents($link, false, $context);
       dd($html);
   }Код рабочий. Но на одном из сайтов постоянно выдаёт ошибку (в примере, в целях безопасности, указан не реальный url):
ErrorException (E_WARNING)
file_get_contents(https://url.com): failed to open stream: Redirection limit reached, abortingТакже пробовал вариант с follow_location
    public function index()
   {
       $context = stream_context_create(
            array(
                "http" => array(
                    "max_redirects" => 101,
                    "header" => "User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36",
                    'follow_location' => false
                )
            )
        );
        $link = '[url]https://url.com[/url]';
        // Get html remote text.
        $html = file_get_contents($link, false, $context);
       dd($html);
   }Выдаёт следующее сообщение:
"""
<HTML><HEAD><TITLE>Loading</TITLE></HEAD><BODY bgcolor="#ffffff"><H3 style="color: #ffffff">Loading</H3></BODY></HTML>
"""Через браузер страница открывается. Пробовал запускать как локально, так и с сервера. Результат один и тот же.
Подозреваю, что стоит какая-то защита на сайте, т.к. другие сайты парсятся нормально. 
Вся надежда на вас, подскажите как решить данную проблему. Заранее спасибо.
Изменено Vladimir_user (23.07.2021 07:39:51)
Не в сети
Без адреса сайта тут сказать ничего нельзя. Могу посоветовать скачать curl (если на Windows) и запросить страницу через него. Если страница будет нормальной, значит проблема у вас, если через curl страницы тоже нет, тогда дело в сайте.
Не в сети
Страницы 1