• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
خطا در کرول محصولات یک فروشگاه
#1
با سلام،

بنده نیاز دارم محصولات یک فروشگاه رو کرول کنیم و کد زیر رو برای این کار دارم:
این کد کار می کنه اما تمامی محصولات چندین بار تکرار میشن و به صورت یکتا نمایش داده نمیشن.
ایراد این کد کجاست و برای رفع چه کار باید بکنم؟


کد پی‌اچ‌پی:
function scraping_slashdot() {
 
   $page file_get_contents('https://');
 
   $doc = new DOMDocument();
 
   $doc->loadHTML($page);
 
   $divs $doc->getElementsByTagName('div');
 
   $imgs $doc->getElementsByTagName('img');
 
   $dels $doc->getElementsByTagName('del');
 
   foreach($imgs as $img) {
 
       if ($img->getAttribute('class') === 'swiper-lazy') {
 
           $item['image'] =  $img->getAttribute('src');
 
       }
 
       $ret[] = $item;
 
   }
 
   foreach($divs as $div) {
 
       if ($div->getAttribute('class') === 'c-title') {
 
           $item['title'] = utf8_decode($div->nodeValue);
 
       }
 
       if ($div->getAttribute('class') === 'c-price') {
 
           $item['discount'] = utf8_decode($div->nodeValue);
 
       }
 
       if ($div->getAttribute('class') === 'c-value') {
 
           $item['price'] = utf8_decode($div->nodeValue);
 
       }
 
       $ret[] = $item;
 
   }
 
   foreach($dels as $del) {
 
       $item['value'] = utf8_decode($del->nodeValue);
 
       $ret[] = $item;
 
   }
 
   return $ret;
}

$ret scraping_slashdot();

foreach(
$ret as $v) {
 
   
    echo $v
['image'].'<br>';
 
   echo $v['title'].'<br>';
 
   echo $v['discount'].'<br>';
 
   echo $v['price'].'<br>';
 
   echo $v['value'].'<br>';

  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان