PDA

View Full Version : آموزش: گرفتن Thumbnail - ScreenShot عکس از صفحه یک سایت و انتقال آن بروی سرور خود !



siavashsay
یک شنبه 01 بهمن 1391, 15:07 عصر
دوستان یه مدتی فکرم درگیر گرفتن ScreenShot از صفحه یک سایت و ذخیره اون بروی هاست خودم بود !
توی PHP نمیشه اینکارو کرد ( البته در هاست های Linux ) با هاست ویندوز میشد !
اما یک سری سایت ها هستن که API میدن و میتونی از لینک اونا استفاده کنی !
یعنی مثلا سایت thumbshot.org میاد لینک رو از شما میگیره و عکس اون لینک رو به شما میده !
مثال :

http://open.thumbshots.org/image.pxf?url=http://www.google.com
اگه به این لینک برین میتونین عکس صفحه گوگل رو که کوچک هست ببینید ! و اگر خواستید با کد :

<img src="http://open.thumbshots.org/image.pxf?url=http://www.google.com" />
در سایتتون اون عکس رو نمایش بدید !
اما یک مشکلی وجود داشت !
اونم این بود که شما عکس رو باید مرتبا از اون سایت بگیرید و اگر اون سایت به هر دلیلی دیگه نبود عکس شما دیگه نمایش داده نمیشد !
باید کاری میکردید که این عکس توی سرور خودتون واسه یک بار ذخیره بشه و بعد ازون استفاده کنید نه از لینک اون سایت !
حالا بنده با CURL این کارو کردم و خواستم به بقیه دوستان هم بگم که شاید موثر باشه واسشون !
این کد :


if(isset($_GET['url'])){
$imgUrl=$_GET['url'];
$mixUrl='http://open.thumbshots.org/image.pxf?url='.$imgUrl;
$name=time();
$ch = curl_init ($mixUrl);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$raw=curl_exec($ch);
curl_close ($ch);
$fp = fopen("images/".$name.'.png','x');// میتونید مسیر پوشه مورد نظر برای آپلود عکس رو توی سرور خودتون بدید
if(fwrite($fp, $raw)){
return 1;
}else{
return 0;
}
fclose($fp);
}

توضیح !

http://www.Your-Site.com/getimg.php?url=http://www.google.com

این کد آدرس URL مورد نظر برای عکس رو میگیره ( از طریق متغیر GET ) و اون رو به سایت thumbshot.org میفرسته !
عکس رو از اون سایت میگیره و بعد در مسیری که شما بهش دادین ( روی سرور خودتون ) ذخیره میکنه !
ازون به بعد شما با این کد :

<img src="Your_Image_Folder/file.png" />
میتونید عکس رو از سرور خودتون توی صفحه مورد نظر ساییتون نشون بدید !
موفق باشید !:)

$ M 3 H R D A D $
یک شنبه 01 بهمن 1391, 15:32 عصر
یه سایت هست میتونی آنلاین صدا ضبط کنی
و api داره که از صدا استفاده کنی یل پخش آنلاین کنی
http://vocaroo.com/

siavashsay
یک شنبه 01 بهمن 1391, 16:32 عصر
یه سایت هست میتونی آنلاین صدا ضبط کنی
و api داره که از صدا استفاده کنی یل پخش آنلاین کنی
http://vocaroo.com/
مهرداد جان منظورم از عکس گرفتن - با وب کم یا ... نبود !
منظورم عکس گرفتن از صفحه اون سایت بود ! مثلا عکس گرفتن از Home Page سایت گوگل !

Mohsen.
یک شنبه 01 بهمن 1391, 16:53 عصر
میتونید در مورد CURL یکم توضیح بدید.
ممنون

$ M 3 H R D A D $
یک شنبه 01 بهمن 1391, 17:28 عصر
میدونم سیاوش جون گفتم که یکی خواست استفاده کنه

siavashsay
یک شنبه 01 بهمن 1391, 17:55 عصر
میتونید در مورد CURL یکم توضیح بدید.
ممنون
curl یک پروژه نرم افزاری برای ارسال و دریافت اطلاعات با پروتکل‌های مختلف (مثلا http یا smtp) است که در سال 1997 شروع شده. این پروژه به صورت یک آبجکت در php در دسترس است و برای آشنایی با متد و مثال‌ها می‌تونید به سایتش مراجعه کنید:
http://php.net/curl
به عنوان یک مثال ملموس: اگر شما بخواهید یک سری اطلاعات را به یک URL خاص POST کنید، خب این کار از طریق یک فرم امکان‌پذیر است. اما اگر بخواهید همین کار به صورت اتوماتیک انجام شود، curl یکی از بهترین راه‌هاست. کاری که ربات‌های اسپمر انجام می‌دهند هم دقیقا همین است؛ محتویات یک صفحه را می‌گیرند و سپس:
1. فرم‌های آن را اتوماتیک پر و ارسال می‌کنند
2. اگر ایمیلی در محتویات آن صفحه باشد، آن را در دیتابیس ذخیره میکنند برای ارسال هرزنامه
3. سپس لینک‌های موجود در آن صفحه را دنبال می‌کنند تا به فرم بعدی برسند!

همچنین بد نیست بدانید که برای گرفتن محتویات یک آدرس خاص در php ، راه‌های متعددی هست اما اکثر آنها در اغلب هاست‌ها بسته شده بجز روش curl که در اغلب هاست‌ها باز است.
--
باز هم یک جستجو توی گوگل بزنید اطلاعات بیشتری هست :)

ravand
یک شنبه 01 بهمن 1391, 18:15 عصر
یه سایت هست میتونی آنلاین صدا ضبط کنی
و api داره که از صدا استفاده کنی یل پخش آنلاین کنی
http://vocaroo.com/

اگه دنبال ضبط صدا هستی من یه همچین مطلبی رو چند وقت پیش گذاشتم روی وبلاگم . گفتم بهت بگم شاید بدردت بخوره.
http://www.barnamenevisi.blogsky.com/1391/09/30/post-108/

$ M 3 H R D A D $
یک شنبه 01 بهمن 1391, 18:28 عصر
پرا با این هم آشنایی دارم یک فایل فلش هست که وب کم و صدا در اختار میده تشکر