-
September 10th, 2020, 17:59
#1
خطا در کرول محصولات یک فروشگاه
با سلام،
بنده نیاز دارم محصولات یک فروشگاه رو کرول کنیم و کد زیر رو برای این کار دارم:
این کد کار می کنه اما تمامی محصولات چندین بار تکرار میشن و به صورت یکتا نمایش داده نمیشن.
ایراد این کد کجاست و برای رفع چه کار باید بکنم؟
کد PHP:
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>';
}
-
-
September 10th, 2020 17:59
# ADS
-
September 10th, 2020, 19:17
#2
عضو انجمن
پاسخ : خطا در کرول محصولات یک فروشگاه
حتما از سایتی که دارید کراول می کنید برای محصولات آی دی تعریف شده، باید اون آی دی رو توی دیتابیس ذخیره کنید و یه قسمتی رو اضافه کنید که آی دی محصول رو با آی دی موجود در دیتابس شما چک کنه اگر موجود نبود اطلاعاتش رو اضافه کنه
-
-
September 11th, 2020, 12:12
#3
پاسخ : خطا در کرول محصولات یک فروشگاه

نوشته اصلی توسط
1wp.ir
حتما از سایتی که دارید کراول می کنید برای محصولات آی دی تعریف شده، باید اون آی دی رو توی دیتابیس ذخیره کنید و یه قسمتی رو اضافه کنید که آی دی محصول رو با آی دی موجود در دیتابس شما چک کنه اگر موجود نبود اطلاعاتش رو اضافه کنه
محصولات موجود در سایت اصلی مدام در حال تغییر هست. و کم و زیاد میشه
ضمن اینکه مشکلی که دارم این هست که محصولات موجود در سایت اصلی تکراری نیست و درست هست، اما کد من تو خروجی تکراری میده.
-