웹 캡처 및 변환 도구

캡처를 수행하기 전에 웹 페이지가로드 될 때까지 기다리는 방법은 무엇입니까?

기본 콘텐츠 이후에 웹 페이지에로드 된 항목

일부 웹 페이지는 특정 콘텐츠를로드하거나 보유하는 데 시간이 걸릴 수 있습니다 int메인 페이지가로드 된 후로드 될 수 있습니다. 콘텐츠가 JavaScript를 통해로드 된 AJAX 헤비 웹 페이지에서 특히 그렇습니다.

GrabzIt은 웹 페이지가로드되는시기를 감지하지만 위에 나열된 특정 상황의 경우 캡처를 수행하기 전에 사용해야하거나 지연이 발생하기 전에 지정된 HTML 요소가 나타날 때까지 기다려야하는 추가 지침이 필요합니다. 앞으로. 웹 페이지의 스크린 샷을 찍거나 HTML을 변환하는 경우 이러한 기술을 사용할 수 있습니다 into PDF, 이미지 또는 Word 문서 및 프리미엄 패키지가 있습니다. 이 기능을 무료로 사용해 볼 수 있지만 7 일 무료 평가판.

이러한 기능은 온라인 스크린 샷웹 스크레이퍼 도구를 제공합니다.

캡처를 수행하기 전에 지정된 시간 동안 대기하는 방법은 무엇입니까?

지연 시간을 밀리 초 단위로 지정하면 캡처 대기 시간입니다. 1 초에 1000 밀리 초가 있음을 기억하십시오. 아래의 모든 예제는 웹 페이지를 캡처하기 전에 3 초 동안 기다립니다.

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.4.7/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")
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 메소드를 사용하여 컨텐츠를로드하는 웹 페이지에서 특히 유용합니다. 먼저 브라우저 개발자 도구를 사용하여 표시되기 위해 기다려야 할 요소를 식별하고 해당 ID 또는 클래스를 기록하십시오. 그런 다음이 클래스 또는 ID를 표준 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.4.7/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")
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")