سلام
تابع file_get_contents و Curl برای این آدرس => http://codal360.ir/fa/search_statement_result کار نمی کنه. آیا از طرف سایت بسته شده؟ و چه راهکار دیگه ای براش وجود داره؟
Printable View
سلام
تابع file_get_contents و Curl برای این آدرس => http://codal360.ir/fa/search_statement_result کار نمی کنه. آیا از طرف سایت بسته شده؟ و چه راهکار دیگه ای براش وجود داره؟
برا من باز نمیشه آدرسی که دادی
ولی با curl میتونی بگیری سایت رو معمولا به شرطی که header ها رو ست کرده باشی اگه بدون هدر بفرستی درخواست رو سرور تشخصی میده که ربات هستی و میتونه اجازه نده
نکته دیگه که بعضی وقتا جواب میده اینکه follow redirect رو هم فعال کنی چون بعضی سایتا ریدایرکت میکنن کاربر رو به یه آدرس دیگه وقتی بازشون بکنی که کابر عادی متوجه نمیشه ولی وقتی با curl بفرستی درخواست رو چون ریدارکت رو دنبال نمیکنه چیزی نمیبینی
مرسی
نمی دونم چرا باز نمیشه برا شما. واسه من مشکلی نداره این لینک http://codal360.ir/fa/search_statement_result یا این لینک http://codal360.ir/fa/search_statement_result/?page=1
یک تکست بصورت جیسون کد هست که میخوام دیکد کنم از اطلاعاتش استفاده کنم، با این کد:
header('Content-Type: text/html; charset=utf8', true);
$url="http://codal360.ir/fa/search_statement_result";
$ch = curl_init();curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,false);
$data = curl_exec($ch);
echo $data;
اما نشد
اینکه میفرمایید بدون ست کردن هدر درخواست نفرستم رو واقعیتش درست متوجه نشدم
هر درخواستی که به سروری فرستاده میشه یه سری هدر داره که مرورگر اینا رو ست میکنه .... مثلا نوع مرورگر یا user agent - کوکی - انکودینگ و .....
حالا شما وقتی با curl درخواست میفرستی دیگه مرورگری در کار نیستو این هدر ها ست نمیشه و با درخواست فرستاده نمیشه در نتیجه سرور میفهمه که شما با مرورگرت درخواست رو نفرستادی و ربات هستی
مهم ترینش هدر user-agent هستش که مشخص میکنه شما از چه مرورگری داری استفاده میکنی و اکثر سرور ها این رو چک میکنن
مثلا وقتی میخای curl بفرستی اینجور یمیتونی هدر user-agent رو اضافه کنی به درخواستت
curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
شاید آی پی سرور شما رو بلاک کرده اون سرور