כלים ללכידה ולהמרה של האינטרנט

כיצד לחכות לטעינת דף אינטרנט לפני ביצוע הצילום?

פריט בדף אינטרנט שנטען לאחר התוכן הראשי

דפי אינטרנט מסוימים עשויים להימשך זמן מה לטעון או שיש להם תוכן ספציפי שאתה 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 ואז להמתין לפרק זמן נוסף לפני יצירת הלכידה.