گرفتن اطلاعات سایت mega.zn با curl

حل شده 

PHP

توسط masoud-fathi در 10 ماه پیش
3 34.1k 1 10 ماه پیش
masoud-fathi reza-irdev
1

چطور میشه اطلاعات سایت را با curl بگیرم کد من اینه اما سایت رو بالا نمیاره دلیل چیه باید چیکار کنم؟

$url="https://mega.nz/";
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
 curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
  curl_setopt($ch, CURLOPT_REFERER,"https://mega.zn/");
$result=curl_exec($ch);
$e=curl_error ($ch);
curl_close($ch);
echo  $result.$e;
آخرین ویرایش: 24-12-2018 ساعت 22:30، توسط masoud-fathi

پاسخ ها

0

دوست عزیز. قبلا خدمتتون عرض کردم. این سایت هایی که شما دارید سعی میکنید اطلاعات اونا رو بگیرید با جاوا اسکریپت رندر میشن. اگه جاوا اسکریپت مرورگر رو غیر فعال کنید و سایت بالا رو باز کنید میبینید که یه صفحه خالی میاد. این همون چیزیه که crul بهتون نشون میده. اگر رو صفحه CURL گزینه View page source رو بزنید میبینید که فقط یه کد html ساده بهتون میده. تو این کد html یه فایل جاوا اسکریپت هست که محتوای کل سایت رو اون لود میکنه.

برای گرفتن اطلاعات این سایت ها شما باید ابزاری داشته باشید که بتونه جاوا اسکریپت رو مثل مرورگر بخونه. که یکیشو معرفی کردم PhantomJS.

یه آموزش هم اینجا هست که نحوه استفاده PhantomJS و php رو گذاشته میتونید تست کنید:

https://shout.setfive.com/2015/03/30/7817/

به اینPhantomJS چی میگن و آیا نمونه دیگه هم وجود داره – masoud-fathi 10 ماه پیش
بهش میگن headless Browser یعنی رابط گرافیکی نداره. بله کلی از اینا داریم: https://github.com/dhamaniasad/HeadlessBrowsersReza 10 ماه پیش
لطفا اگر به جواب رسیدید پاسخ درست رو انتخاب کنید – Reza 10 ماه پیش
میشه یک آموزش در php بزنید آموزش ها گنگ هستند – masoud-fathi 10 ماه پیش

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.

لطفا ابتدا لاگین کنید