(3)
Curl engellenebiliyor mu?
şimdi bi curl kullanayım dedim.bazı sitelerde curl ekrana boş bastırıyor.fonksiyonumu sonda paylaşacağım.idefix'te örneğin, boş bastırıyor. kitapyurdunda falan sıkıntı yok.sebebi nolabilir, nasıl aşılabilir?function curl($site){ $ch=curl_init(); $maxredirect = 2; curl_setopt($ch, CURLOPT_UR
şimdi bi curl kullanayım dedim.
bazı sitelerde curl ekrana boş bastırıyor.
fonksiyonumu sonda paylaşacağım.
idefix'te örneğin, boş bastırıyor. kitapyurdunda falan sıkıntı yok.
sebebi nolabilir, nasıl aşılabilir?
function curl($site){
$ch=curl_init();
$maxredirect = 2;
curl_setopt($ch, CURLOPT_URL, $site);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$mr = $maxredirect === null ? 5 : intval($maxredirect);
if (ini_get('open_basedir') == '' && ini_get('safe_mode' == 'Off')){
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, $mr > 0);
curl_setopt($ch, CURLOPT_MAXREDIRS, $mr);
}else{
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
if ($mr > 0){
$newurl = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
$rch = curl_copy_handle($ch);
curl_setopt($rch, CURLOPT_HEADER, true);
curl_setopt($rch, CURLOPT_NOBODY, true);
curl_setopt($rch, CURLOPT_FORBID_REUSE, false);
curl_setopt($rch, CURLOPT_RETURNTRANSFER, true);
do {
curl_setopt($rch, CURLOPT_URL, $newurl);
$header = curl_exec($rch);
if (curl_errno($rch)){
$code = 0;
}else{
$code = curl_getinfo($rch, CURLINFO_HTTP_CODE);
if ($code == 301 || $code == 302){
preg_match('/Location:(.*?)\n/', $header, $matches);
$newurl = trim(array_pop($matches));
}else{
$code = 0;
}
}
}
while ($code && --$mr);
curl_close($rch);
if (!$mr){
if ($maxredirect === null){
trigger_error('Too many redirects. When following redirects, libcurl hit the maximum amount.',E_USER_WARNING);
}else{
$maxredirect = 0;
}
return false;
}
curl_setopt($ch, CURLOPT_URL, $newurl);
}
}
return curl_exec($ch);
}
0
engellenemez diye biliyorum. bende curl kullanan biriyim şu ana kadar hiç karşılaşmadım
0
allah allah bunu niçin boş basıyor öyleyse.
ben idefixe daha önce de curl ile bağlanıyordum ilk kez böyle bir şeyle karşılaştım. aklıma da hiçbir çözüm gelmiyor, hata da vermediği için.
0
curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17');
şeklinde eklemeyi deneyin bazı siteler bot görünümündeki agentları reddediyormuş sanırım. ayrıca auto_referrer'ı true yapmak da işe yarayabilirmiş.
stackoverflow.com
0