За последние 24 часа нас посетили 20050 программистов и 1722 робота. Сейчас ищут 1627 программистов ...

Прошу помощи.

Тема в разделе "Сделайте за меня", создана пользователем DanLogic, 8 ноя 2020.

  1. DanLogic

    DanLogic Новичок

    С нами с:
    8 ноя 2020
    Сообщения:
    1
    Симпатии:
    0
    Добрый день.
    Написал код парсера.
    С главной страницы парсит без проблем.
    Из категорий выдает ошибку 404.
    Подскажите в какую сторону "курить", чтобы ее обойти или это в принципе невозможно?


    Код (Text):
    1. <?php
    2. include_once('simple_html_dom.php');
    3. function curl_get($url, $referer = 'https://autoenergy.by/'){
    4.     $ch = curl_init();
    5.     curl_setopt($ch, CURLOPT_URL, $url );
    6.     curl_setopt($ch, CURLOPT_HEADER, true);
    7.     curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0");
    8.     curl_setopt($ch, CURLOPT_REFERER, $referer);
    9.     curl_setopt($ch, CURLOPT_VERBOSE, true);
    10.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    11.     curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    12.     curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
    13.     curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, false);
    14.     $data = curl_exec($ch);
    15.     curl_close($ch);
    16.     return $data;
    17.     }
    18.  
    19. //подключене страницы
    20.  
    21.  
    22. $html = curl_get("https://autoenergy.by/catalog/gruzovye/");
    23.  
    24. $dom =  str_get_html($html);
    25. $courses = $dom->find('.product-item-col');
    26. echo $courses->plaintext .'</br>';
    27.  
    28.  
    29. foreach ($courses as $course){
    30.         $a = $course->find('a', 0);
    31.        
    32.         $one = curl_get("https://autoenergy.by/gruzovye/" . $a->href);
    33.         $one_dom = str_get_html($one);
    34.         //название
    35.         $name = $one_dom->find('.navigation-title',0);
    36.         echo $name->plaintext .'</br>';
    37.        
    38.         //цена
    39.         $price = $one_dom->find('.product-item-detail-tab-content',0);
    40.         echo $price->plaintext .'</br>';
    41.        
    42.        
    43.        
    44.        
    45.      
    46. }
     
  2. twim32

    twim32 Активный пользователь

    С нами с:
    29 мар 2017
    Сообщения:
    275
    Симпатии:
    58
    Обсуждение парсеров на форуме запрещено правилами.