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

كيف تنتظر تحميل صفحة ويب قبل إجراء عملية التقاط؟

يتم تحميل عنصر على صفحة ويب بعد المحتوى الرئيسي

يمكن أن تستغرق بعض صفحات الويب بعض الوقت للتحميل أو تحتوي على محتوى محدد intقد يتم تحميله بعد تحميل الصفحة الرئيسية. وينطبق هذا بشكل خاص على صفحات الويب الثقيلة الخاصة بـ AJAX حيث يتم تحميل المحتوى عبر JavaScript.

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

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

هذه الميزات متوفرة أيضًا في موقعنا لقطة شاشة على الإنترنت و مكشطة الويب الأدوات.

كيف تنتظر وقتًا محددًا قبل إجراء الالتقاط؟

ما عليك سوى تحديد التأخير بالمللي ثانية وهذه هي المدة التي سينتظرها الالتقاط. تذكر أن هناك 1000 مللي ثانية في الثانية. تنتظر جميع الأمثلة أدناه ثلاث ثوانٍ قبل التقاط صفحة الويب.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
ImageOptions options = new ImageOptions();
options.Delay = 3000;
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.SaveTo("images/result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
ImageOptions options = new ImageOptions();
options.setDelay(3000);
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.SaveTo("images/result.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", 
{"delay": 3000}).Create();
</script>
var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
var options = {"delay":"3000"};
client.url_to_image("http://www.spacex.com", options);
client.save_to("images/result.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");
$options = GrabzItImageOptions->new();
$options->delay(3000);
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->SaveTo("images/result.jpg");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$options = new \GrabzIt\GrabzItImageOptions();
$options->setDelay(3000);
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->SaveTo($filepath);
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzItImageOptions.GrabzItImageOptions()
options.delay = 3000
grabzIt.URLToImage("http://www.spacex.com", options)
grabzIt.SaveTo("images/result.jpg")
https://api.grabz.it/services/convert?key=Sign in to view your Application Key&format=jpg&delay=3000&url=https%3A%2F%2Fspacex.com%2F
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzIt::ImageOptions.new()
options.delay = 3000
grabzItClient.url_to_image("http://www.spacex.com", options)
grabzItClient.save_to("images/result.jpg")

كيف تنتظر ظهور عنصر HTML قبل إجراء الالتقاط؟

تعتبر هذه التقنية مفيدة بشكل خاص على صفحات الويب التي تستخدم أساليب AJAX لتحميل المحتوى. استخدم أولاً أدوات مطور المتصفحات لديك لتحديد العنصر الذي تحتاج إلى انتظار ظهوره، أو قم بتدوين معرفه أو فئته أو إنشاء محدد CSS أكثر تعقيدًا. ثم حدد هذا محدد CSS وبمجرد أن يصبح العنصر مرئيًا، يتم التقاط صفحة الويب. لاحظ أنه في حالة وجود عدة عناصر HTML متطابقة، فسوف تظهر بمجرد ظهور أحد العناصر.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
ImageOptions options = new ImageOptions();
options.WaitForElement = "#Content";
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.SaveTo("images/result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
ImageOptions options = new ImageOptions();
options.setWaitForElement("#Content");
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.SaveTo("images/result.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", 
{"waitfor": "#Content"}).Create();
</script>
var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
var options = {"waitForElement":"#Content"};
client.url_to_image("http://www.spacex.com", options);
client.save_to("images/result.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");
$options = GrabzItImageOptions->new();
$options->waitForElement("#Content");
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->SaveTo("images/result.jpg");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$options = new \GrabzIt\GrabzItImageOptions();
$options->setWaitForElement("#Content");
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->SaveTo($filepath);
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzItImageOptions.GrabzItImageOptions()
options.waitForElement = "#Content"
grabzIt.URLToImage("http://www.spacex.com", options)
grabzIt.SaveTo("images/result.jpg")
https://api.grabz.it/services/convert?key=Sign in to view your Application Key&format=jpg&waitfor=%23Content&url=https%3A%2F%2Fspacex.com%2F
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzIt::ImageOptions.new()
options.waitForElement = "#Content"
grabzItClient.url_to_image("http://www.spacex.com", options)
grabzItClient.save_to("images/result.jpg")

يمكن استخدام هذه التقنية مع طريقة التأخير المذكورة أولاً. السماح لك بالانتظار حتى يظهر عنصر HTML ثم الانتظار لفترة زمنية أخرى قبل إنشاء الالتقاط.