2015-10-28 2 views
0
<?php 

    $i=1; 
    while ($i<=5) { 
     # code... 

     $url = 'http://www.amazon.in/gp/bestsellers/electronics/ref=zg_bs_nav_0#'.$i; 
     echo $url; 
      $html= file_get_contents($url); 
      $dom = new DOMDocument(); 
      @$dom->loadHTML($html); 
      $xPath = new DOMXPath($dom); 
      $classname="zg_title"; 
      $elements = $xPath->query("//*[contains(@class, '$classname')]"); 
       foreach ($elements as $e) 
       { 
       $lnk = $e->getAttribute('href'); 
       $e->setAttribute("href", "http://www.amazon.in".$lnk); 
       $newdoc = new DOMDocument; 
       $e = $newdoc->importNode($e, true); 
       $newdoc->appendChild($e); 
       $html = $newdoc->saveHTML(); 
       echo $html; 
      } 
      $i++; 
      } 
?> 

Я пытаюсь проползти по странице бестселлеров Amazon, которая содержит список 100 лучших товаров бестселлеров, которые содержат 20 элементов на каждой странице. В каждом цикле значение $ i изменяется и добавляется к URL. Но только первые 20 предметов отображаются 5 раз, я думаю, что это имеет какое-то отношение к разбиению на страницы ajax, но я не могу понять, что это такое.Сканирование через Amazon Bestsellers страница

ответ

1

Попробуйте это:

<?php 

    $i=1; 
    while ($i<=5) { 
     # code... 
     $url = 'http://www.amazon.in/gp/bestsellers/electronics/ref=zg_bs_electronics_pg_'.$i.'?ie=UTF8&pg='.$i; 
     echo $url; 
      $html= file_get_contents($url); 
      $dom = new DOMDocument(); 
      @$dom->loadHTML($html); 
      $xPath = new DOMXPath($dom); 
      $classname="zg_title"; 
      $elements = $xPath->query("//*[contains(@class, '$classname')]"); 
       foreach ($elements as $e) 
       { 
       $lnk = $e->getAttribute('href'); 
       $e->setAttribute("href", "http://www.amazon.in".$lnk); 
       $newdoc = new DOMDocument; 
       $e = $newdoc->importNode($e, true); 
       $newdoc->appendChild($e); 
       $html = $newdoc->saveHTML(); 
       echo $html; 
      } 
      $i++; 
      } 
?> 

Изменить $url

+0

Спасибо! Работает как шарм –

Смежные вопросы