Tools to Capture and Convert the Web

How do you alter a scrape using GrabzIt's Web Scraper API?

Increase the integration between GrabzIt's Web Scraper and your application by using GrabzIt's Web Scraper API to programmatically change the properties of web scrapes.

Alter the target of a web scrape

The example below shows how to change both the seed URL's and the main target URL.

GrabzItScrapeClient client = new GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
Target target = new Target();
//Set the target URL
target.URL = "http://www.example.com";
List<string> seedUrls = new List<string>();
seedUrls.Add("http://www.example.com/news.html");
seedUrls.Add("http://www.example.com/about.html");
seedUrls.Add("http://www.example.com/contactus.html");
//Set the seed URL's
target.SeedURLs = seedUrls.ToArray();
//Enter the id of the scrape you want to alter along with the target object
client.SetScrapeProperty("59421f049e3d991318d35e49", target);
$client = new GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$target = new GrabzItTarget();
//Set the target URL
$target->SetURL("http://www.example.com");
$seedUrls = array();
$seedUrls[] = "http://www.example.com/news.html";
$seedUrls[] = "http://www.example.com/about.html";
$seedUrls[] = "http://www.example.com/contactus.html";
//Set the seed URL's
$target->SetSeedURLs($seedUrls);
//Enter the id of the scrape you want to alter along with the target object
$client->SetScrapeProperty("59421f049e3d991318d35e49", $target);
client = GrabzItScrapeClient.GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
target = new GrabzItTarget.GrabzItTarget()
#Set the target URL
target.url = "http://www.example.com"
seedUrls = []
seedUrls.append("http://www.example.com/news.html")
seedUrls.append("http://www.example.com/about.html")
seedUrls.append("http://www.example.com/contactus.html")
#Set the seed URL's
target.seedURLs = seedUrls
#Enter the id of the scrape you want to alter along with the target object
client.SetScrapeProperty("59421f049e3d991318d35e49", target)

Alter a variable in a web scrape

In the examples below we set a variable to a string array of names, however the variable can also be set to any other type of simple data.

GrabzItScrapeClient client = new GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
Variable variable = new Variable("names");
List<string> names = new List<string>();
names.Add("Tom");
names.Add("Dick");
names.Add("Harry");
foreach(string name in names)
{
	variable.AddArrayItem(name);
}
//Enter the id of the scrape you want to alter along with the variable object
client.SetScrapeProperty("59421f049e3d991318d35e49", variable);
$client = new GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$variable = new GrabzItVariable("names");
$names = array();
$names[] = "Tom";
$names[] = "Dick";
$names[] = "Harry";
$variable->SetValue($names);
//Enter the id of the scrape you want to alter along with the variable object
$client->SetScrapeProperty("59421f049e3d991318d35e49", $variable);
client = GrabzItScrapeClient.GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
variable = new GrabzItVariable.GrabzItVariable("names")
names = []
names.append("Tom")
names.append("Dick")
names.append("Harry")
#Set the seed URL's
variable.value = names
#Enter the id of the scrape you want to alter along with the variable object
client.SetScrapeProperty("59421f049e3d991318d35e49", variable)

The variable value can then be accessed in the normal way by using the Global.get method as shown below.

var names = Global.get("names");

The names array can then be used as normal in the scrape instructions.