Outils pour capturer et convertir le Web

Comment publier sur un formulaire et capturer le résultat?

Pour publier sur un formulaire, vous devez d'abord obtenir l'URL du formulaire en cours de publication. Pour ce faire, récupérez le formulaire HTML en regardant la source de la page Web, qui peut ressembler à ceci.

<form action="http://www.example.com/login.php" method="post">
   <div class="FormRow">
      <label>Username</label>
      <input type="text" name="username" data-gt-translate-attributes='[{"attribute":"value","format":"json"}]' value="">
   </div>
   <div class="FormRow">
      <label>Password</label>
      <input type="password" name="password" data-gt-translate-attributes='[{"attribute":"value","format":"json"}]' value="">
   </div>
   <input type="submit" class="submit" data-gt-translate-attributes='[{"attribute":"value","format":"json"}]' value="Login">
</form>

Une fois que vous avez l'URL du formulaire, vous devez spécifier le nom et les valeurs de chacune des entrées du formulaire afin que la publication ne soit pas rejetée par le site Web cible. Un exemple de ceci est présenté ci-dessous.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.AddPostParameter("username", "bob");
options.AddPostParameter("password", "pass");

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

ImageOptions options = new ImageOptions();
options.AddPostParameter("username", "bob");
options.AddPostParameter("password", "pass");

grabzIt.URLToImage("http://www.example.com/login.php", options);
grabzIt.Save("http://www.mywebsite.com/handler");
<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").AddPostVariable("username", "bob").AddPostVariable("password", "pass")
.ConvertURL("http://www.example.com/login.php").Create();
</script>

Lorsque vous spécifiez des données de publication dans node.js, vous devez coder l'URL du nom et de la valeur de chaque variable de publication.

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.example.com/login.php", {"postData":"username=bob&password=pass"});
client.save("http://www.example.com/handler", 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->AddPostParameter("username", "bob");
$options->AddPostParameter("password", "pass");

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

$options = new \GrabzIt\GrabzItImageOptions();
$options->AddPostParameter("username", "bob");
$options->AddPostParameter("password", "pass");

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

options = GrabzItImageOptions.GrabzItImageOptions()
options.AddPostParameter("username", "bob");
options.AddPostParameter("password", "pass");

grabzIt.URLToImage("http://www.example.com/login.php", options)
grabzIt.Save("http://www.mywebsite.com/handler.py")

N'oubliez pas que lorsque vous faites des demandes, assurez-vous TOUTE les valeurs des paramètres sont codées en URL. Notez que chaque nom et valeur POST devront également être codés en URL en premier.

https://api.grabz.it/services/convert?key=Sign in to view your Application Key&post=username%3Dbob%26password%3Dpass&format=jpg&url=http%3A%2F%2Fwww.example.com%2Flogin.php
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.add_post_parameter("username", "bob");
options.add_post_parameter("password", "pass");

grabzIt.url_to_image("http://www.example.com/login.php", options)
grabzIt.save("http://www.mywebsite.com/handler/index")