Strumenti per acquisire e convertire il Web

Metodi di recupero per l'API di GrabzIt

Esistono due metodi che possono essere utilizzati per recuperare schermate, acquisizioni di tabelle e GIF animate dall'API di GrabzIt, entrambe con i loro vantaggi e svantaggi.

Metodo asincrono

Metodo di richiamata

Conosciuto anche come metodo di callback, questo è il modo consigliato per recuperare le acquisizioni. Tuttavia richiede che l'applicazione in fase di creazione abbia un nome di dominio o un indirizzo IP disponibile pubblicamente. Un esempio in cui questo metodo potrebbe essere utilizzato sarebbe un'applicazione web.

Come si può vedere nel diagramma, il metodo asincrono funziona inviando una chiamata a GrabzIt e quindi aspettando che una chiamata venga rispedita all'applicazione dichiarando che lo screenshot è pronto. Il vantaggio dell'utilizzo di questo metodo è che richiede meno chiamate e consente ad altri processi, come ad esempio una richiesta web di procedereinterrupted.

Un esempio di chiamata asincrona è mostrato di seguito per ogni lingua lato server che GrabzIt attualmente supporta.

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo ASP.NET Handler.

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");

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo Java Handler.

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");

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo Node.js Handler, tuttavia, ciò non deve essere confuso con i callback della funzione Node.js. I callback discussi qui sono callback HTTP inviati su Internet!

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;
    }
});

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo Perl Handler.

$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");

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo PHP Handler.

$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");

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo Python Handler.

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")

Ricorda che per chiamare l'API di GrabzIt in modo asincrono dovrai implementare questo Ruby Handler.

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")

Metodo sincrono

Metodo di polling

Questo metodo deve essere utilizzato solo se non è possibile utilizzare il metodo asincrono. Il metodo sincrono funziona inviando una chiamata a GrabzIt per creare l'acquisizione, quindi eseguendo il polling di GrabzIt ogni pochi secondi fino a quando non è pronto, come mostrato nel diagramma.

Una volta pronto scarica l'acquisizione come al solito. Lo svantaggio di questa tecnica è che costringe l'attuale processo ad attendere il completamento dell'acquisizione, motivo per cui non è appropriato per le applicazioni Web. Tuttavia, il vantaggio è che l'applicazione non ha bisogno di un nome di dominio o di un indirizzo IP e quindi può essere utilizzata da applicazioni desktop.

Di seguito viene mostrato un esempio di chiamata sincrona per ogni lingua lato server che GrabzIt attualmente supporta.

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.4.7/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")