رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
خبر خوان با Dom Html
#1
سلام دوستان.
یه سایتی رو با Dom Html پیمایش می کنم که در هر صفحه اگر 100 لینک وجود دارد 100 بار اون لینک هارو بازدید می کنم و محتوا صفحات رو در دیتابیس ذخیره می کنم(البته این کار curl در یه دقیقه انجام می دهد)
حالا احساس می کنم سایت مقصد این درخواست های منو شناسایی می کنه و اجازه این کار رو به من نمی دهد.
اگه فقط 100 لینکی که در صفحه اول هستنecho کنم مشکلی نداره ولی وقتی اون 100 لینک رو هم در یه حلقه قرار می دهم برای پیمایش هیچی بر نمی گرداند و دفعات بعد کلا انگار درخواست های من فیلتر می شوند.
حالا راه حل این کار چیه؟؟؟
$html = new \Htmldom($link);
         foreach($html->find('.description a') as $link){
echo $link->href;

 $link2 = new \Htmldom($link->href);
 foreach($link2->find('h1') as $a){
           echo $a->plaintext.'';      
             }
}
پاسخ
تشکر شده توسط:
#2
سلام ، فکر می کنم با ست کردن  USER AGENT بتونید این مشکل رو   حل کنین ، تو Asp.net   که به این صورت حل میشه :


request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";
      request.Referer = "http://www.google.com/";



کد php هم اش پیدا کردم



<?php
$opts = array(
    'http' => array(
        'user_agent' => 'Enter agent here',
    )
);

$context = stream_context_create($opts);
libxml_set_streams_context($context);
$doc = DOMDocument::load('URL');



سوال : چطور Referer رو به این کد php اضافه کنیم ؟
پاسخ
تشکر شده توسط: HamedBeyranvand




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