أدوات لالتقاط وتحويل الويب

طرق الاسترجاع لواجهة برمجة تطبيقات GrabzIt

هناك طريقتان يمكن استخدامهما لاسترداد لقطات الشاشة ولقطات الجدول وصور GIF المتحركة من واجهة برمجة تطبيقات GrabzIt، ولكل منهما مزاياه وعيوبه.

طريقة غير متزامنة

طريقة رد الاتصال

تُعرف أيضًا باسم طريقة رد الاتصال، وهي الطريقة الموصى بها لاسترداد اللقطات. ومع ذلك، فإنه يتطلب أن يكون للتطبيق الذي يتم إنشاؤه اسم مجال أو عنوان IP متاح للعامة. أحد الأمثلة على إمكانية استخدام هذه الطريقة هو تطبيق الويب.

كما هو موضح في الرسم البياني، تعمل الطريقة غير المتزامنة عن طريق إرسال مكالمة إلى GrabzIt ثم انتظار إرسال مكالمة مرة أخرى إلى التطبيق تفيد بأن لقطة الشاشة جاهزة. وتتمثل ميزة استخدام هذه الطريقة في أنها تتطلب مكالمات أقل وتسمح للعمليات الأخرى، مثل طلبات الويب بالمتابعةintاندلعت.

يظهر أدناه مثال على مكالمة غير متزامنة لكل لغة يدعمها GrabzIt حاليًا من جانب الخادم.

تذكر أنه من أجل الاتصال بواجهة برمجة تطبيقات GrabzIt بشكل غير متزامن، ستحتاج إلى تنفيذ ASP.NET هذا معالج.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.URLToImage("http://www.spacex.com");
grabzIt.Save("http://www.mywebsite.com/Home/Handler");

تذكر أنه من أجل استدعاء GrabzIt's API بشكل غير متزامن، ستحتاج إلى تنفيذ Java معالج.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.URLToImage("http://www.spacex.com");
grabzIt.Save("http://www.mywebsite.com/handler");

تذكر أنه من أجل استدعاء GrabzIt's API بشكل غير متزامن، ستحتاج إلى تنفيذ Node.js هذا معالجومع ذلك، لا ينبغي الخلط بين هذا وبين عمليات الاسترجاعات الخاصة بوظيفة Node.js. عمليات الاسترجاعات التي تمت مناقشتها هنا هي عمليات رد اتصال HTTP يتم إرسالها عبر Intإرنت!

var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
client.url_to_image("http://www.spacex.com");
client.save("http://www.example.com/handler", function (error, id){
    if (error != null){
        throw error;
    }
});

تذكر أنه من أجل الاتصال بواجهة برمجة تطبيقات GrabzIt بشكل غير متزامن، ستحتاج إلى تنفيذ لغة Perl هذه معالج.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToImage("http://www.spacex.com");
$grabzIt->Save("http://www.mywebsite.com/handler.pl");

تذكر أنه من أجل استدعاء GrabzIt's API بشكل غير متزامن، سوف تحتاج إلى تنفيذ PHP هذا معالج.

$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToImage("http://www.spacex.com");
$grabzIt->Save("http://www.mywebsite.com/handler.php");

تذكر أنه من أجل الاتصال بواجهة برمجة تطبيقات GrabzIt بشكل غير متزامن، ستحتاج إلى تنفيذ لغة Python هذه معالج.

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.URLToImage("http://www.spacex.com")
grabzIt.Save("http://www.mywebsite.com/handler.py")

تذكر أنه من أجل الاتصال بواجهة برمجة تطبيقات GrabzIt بشكل غير متزامن، ستحتاج إلى تنفيذ روبي معالج.

grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.url_to_image("http://www.spacex.com")
grabzIt.save("http://www.mywebsite.com/handler/index")

طريقة متزامنة

طريقة الاقتراع

يجب استخدام هذه الطريقة فقط في حالة عدم إمكانية استخدام الطريقة غير المتزامنة. تعمل الطريقة المتزامنة عن طريق إرسال استدعاء إلى GrabzIt لإنشاء الالتقاط، ثم استقصاء GrabzIt كل بضع ثوانٍ حتى يصبح جاهزًا، كما هو موضح في الرسم التخطيطي.

بمجرد أن يصبح جاهزًا، يقوم بتنزيل الالتقاط كالمعتاد. عيب هذه التقنية هو أنها تجبر العملية الحالية على الانتظار حتى اكتمال الالتقاط، ولهذا السبب فهي غير مناسبة لتطبيقات الويب. ومع ذلك فإن الميزة هي أن التطبيق لا يحتاج إلى اسم مجال أو عنوان IP وبالتالي يمكن استخدامه من تطبيقات سطح المكتب.

يظهر أدناه مثال على مكالمة متزامنة يتم إجراؤها لكل لغة يدعمها GrabzIt حاليًا من جانب الخادم.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.URLToImage("http://www.spacex.com");
grabzIt.SaveTo("spacex.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.URLToImage("http://www.spacex.com");
grabzIt.SaveTo("spacex.jpg");
<script src="https://cdn.jsdelivr.net/npm/@grabzit/js@3.5.2/grabzit.min.js"></script>
<script>
GrabzIt("Sign in to view your Application Key").ConvertURL("http://www.spacex.com").Create();
</script>
var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
client.url_to_image("http://www.spacex.com");
client.save_to("spacex.jpg", function (error, id){
    if (error != null){
        throw error;
    }
});
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToImage("http://www.spacex.com");
$grabzIt->SaveTo("spacex.jpg");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToImage("http://www.spacex.com");
$grabzIt->SaveTo("spacex.jpg");
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.URLToImage("http://www.spacex.com")
grabzIt.SaveTo("spacex.jpg")
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.url_to_image("http://www.spacex.com")
grabzIt.save_to("spacex.jpg")