laruz 983 ارسال شده در تیر 15، 1394 گزارش اشتراک گذاری ارسال شده در تیر 15، 1394 آموزش ستفاده از اطلاعات سایتهای دیگر با php میخوایم از سایتای دیگه مطلب بدزدیم!!! میتونیم سایتمون رو طوری درست کنیم که وقتی داریم استراحت میکنیم خودش بره توی سایتای دیگران و مطالب سایت ها رو بگیره و توی سایت ما ذخیره کنه و نشون بده. خب این کار چجوریه؟ به نظرتون برا عملی کردنش باید چیکار کنیم؟ میریم توی سایت مورد نظر مطلبش رو کپی میکنیم میایم توی سایت خودمون میزاریم به همین راحتی خب حالا چجوری میشه این کار رو با PHP انجام داد؟ میرم سر اصل مطلب و چند روش رو براتون به صورت ساده توضیح میدم.اگه بخوایم کل مطالب یه صفحه رو از یه سایت دیگه بگیریم و توی صفحه شخصی خودمون نمایش بدیم میتونیم از تابع file_get_contents به صورت زیر استفاده کنیم: echo file_get_contents('http://www.100t.ir/'); خب همونطور که میبینید اول با دستور file_get_contents محتوای صفحه اول سایت رو گرفتم و با قرار دادن یه دستور echo محتوا رو توی صفحه ی شخصی خودم چاپ کردم. به همین راحتی:-)بعضی سایتا برای اینکه نتونیم اطلاعاتشون رو بدزدیم میان و یه لایه ی امن خریداری میکنن (همون لایه ی SSL که پروتکل HTTPS ازش استفاده میکنه) ما هم برای اینکه بتونیم اطلاعاتشون رو بگیریم از کتابخانه ی معروف Curl که در سیستم عامل لینوکس قرار داره استفاده میکنیم .Curl.php function getPage($url) {$ch = curl_init();curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_HEADER, false);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_REFERER, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);$result = curl_exec($ch);curl_close($ch);return $result;}//now we use Curl to get a page:echo getPage('http://www.100t.ir/'); اول اومدیم یه تابع ساختیم و توش از دستورات Curl استفاده کردیم. خب این تابع رو به این صورت ساختیم که آدرس یه صفحه رو بهش میدیم و محتوای اون صفحه رو بهمون تحویل میده. خب حالا اگه بخوایم یه قسمت خاصی از محتوای یه سایت رو بگیریم چیکار میکنیم؟ روش های مختلفی برای گرفتن اطلاعات سایت های دیگه وجود داره مثلا قسمت خبرخوان (RSS) یک سایت رو بگیریم و داده ها رو از توش بکشیم بیرون یا اینکه مستقیما صفحه مورد نظر رو دریافت کنیم و با توابع مختلف PHP اون رو تجزیه کنیم و عکس ها و متن هاشو بکشیم بیرون. یه کتابخونه ای که خیلی مورد استفاده قرار میگیره کتابخونه Simple HTML DOM parser هست.DOMhtml.php set_time_limit(-1);header('Content-Type: text/html; charset=utf-8');// example of how to use basic selector to retrieve HTML contentsinclude('simple_html_dom.php');// get DOM from URL or file$html = file_get_html('http://www.100t.ir/');// find all image with full tagforeach($html->find('img') as $e){echo $e->outertext . '<br>'; } توی دستورات بالا ابتدا زمان مورد نیاز برای تحلیل صفحه رو منفی یک قرار دادم که به معنای بی نهایت هست. این برای مواقعی استفاده میشه که نمیدونیم چقد طول میکشه تا دستوراتمون اجرا بشه. بعدش نوع صفحه رو html تنظیم کردم و محتوا رو از نوع uft-8 گذاشتم که فارسی رو ساپورت کنه. در قسمت بعد کتابخونه simple DOM HTML رو اظافه کردم و ازش استفاده کردم تا همه ی عکسای صفحه رو بگیرم. حالا وقتی که کد اجرا بشه همه ی عکسای سایت طرحچه رو توی صفحه میتونید ببینید. میتونید کد مربوط به این مثال رو از پایین همین صفحه دانلود کنید و آزمایش کنید.شما میتونید با استفاده از این آموزش به صورت اتوماتیک مطالب و عکسای سایتای دیگه رو بگیرید و توی سایت خودتون نمایش بدید به همین راحتی به همین خوشمزگی لینک به دیدگاه به اشتراک گذاری در سایت های دیگر More sharing options...
plus 12 ارسال شده در تیر 15، 1394 گزارش اشتراک گذاری ارسال شده در تیر 15، 1394 کاش عنوان بهتری را انتخاب می کردین. لینک به دیدگاه به اشتراک گذاری در سایت های دیگر More sharing options...
sun.night902 499 ارسال شده در تیر 15، 1394 گزارش اشتراک گذاری ارسال شده در تیر 15، 1394 مطلب مفیدی بود ولی ای کاش هم عنوان رو بهتر قرار میدادی هم این که کد هارو داخل تابع کد html قرار میدادی که تایپیک از حالت بهم ریخته خارج بشه موفق باشی لینک به دیدگاه به اشتراک گذاری در سایت های دیگر More sharing options...
laruz 983 ارسال شده در تیر 15، 1394 مالک گزارش اشتراک گذاری ارسال شده در تیر 15، 1394 دوستان ممنون. تصحیح شد لینک به دیدگاه به اشتراک گذاری در سایت های دیگر More sharing options...
پست های پیشنهاد شده