2.0.8 • Published 1 month ago

quickscraper-sdk v2.0.8

Weekly downloads
10
License
MIT
Repository
github
Last release
1 month ago

Quick Scraper NodeJS SDK

Version

Register For Free https://www.quickscraper.co

It does supports EcmaScript 8, TypeScript, async-await, Promises !
It does also supports for AWS Lambda like serverless cloud function call.
Please Feel free to create Issue for any help !

Installation

npm install quickscraper-sdk@latest --save

Get Free Account (No Credit Card Required)

Examples

Typescript

import { QuickScraper } from "quickscraper-sdk";
const QuickScraperClient = new QuickScraper();

try {
  const ACCESS_TOKEN = "";
  QuickScraperClient.setAccessToken(ACCESS_TOKEN);
  const requestUrl = "http://httpbin.org/ip";
  const response = await QuickScraperClient.getHtml(requestUrl);
  console.log("htmlResponse ", response.data);
  console.log("metadata ", response.metadata);
  // Manipulate your response here using cheerio
} catch (error) {
  console.log("error ", error);
}

Javascript

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();

try {
  const ACCESS_TOKEN = "";
  QuickScraperClient.setAccessToken(ACCESS_TOKEN);
  const requestUrl = "http://httpbin.org/ip";
  const response = await QuickScraperClient.getHtml(requestUrl);
  console.log("htmlResponse ", response.data);
  console.log("metadata ", response.metadata);
  // Manipulate your response here using cheerio
} catch (error) {
  console.log("error ", error);
}

Basic Usage

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip");

Write a HTML to File

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
await QuickScraperClient.writeHtmlToFile("http://httpbin.org/ip", 'filename.html');

Rendering Javascript

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip", {
  render: true,
});

Custom Headers

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("https://httpbin.org/headers", {
//This field is added to set cookis,authorizarion token etc from request header.
  isKeepHeaders: true,//This value will be true when we want to use header
  customRequestHeaders: {
    "X-My-Custom-Header": "QS-APP",//Supports values like `'Accept-Encoding': 'gzip,deflate,compress'`
  },
});

Geographic Location

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip", {
  country_code: "US", //Add your Geotargeting country which you are selecting from request page,for example, for Canada value like `CA`,for China value like `CN`
});
console.log(response);

Premium Residential/Mobile Proxy Pools

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip", {
  premium: true,//Up or premium proxies will be picked
});
console.log(response);

Account Information

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const usage = await QuickScraperClient.account();
console.log(usage);

Device Type

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip", {
  device_type: 'mobile' //Add value `mobile` if the device which you are using is mobile and no need to provide this option if want to scrap site as desktop view
});
console.log(response);

Parser Addon

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip", {
  parserSubscriptionId: 'YOUR_PARSER_SUBSCRIPTION_ID' //Get the parser subscription id from request page when you select parser and paste here, for example value like '4a0360ea-042a-555e-b214-e3054a400f2a'
});
console.log(response);

Webhook Addon

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("http://httpbin.org/ip", {
  webhookRequestId: 'WEBHOOK_REQUEST_ID' //Get the webhook id from dashboard and paste here, for example value like `2233-34jkjsd-324jkds-3243kh`
});
console.log(response);

Get JSON from data

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getData("http://httpbin.org/ip", {
  parserSubscriptionId: 'YOUR_PARSER_SUBSCRIPTION_ID' //Get the parser subscription id from request page when you select parser and paste here, for example value like '4a0360ea-042a-555e-b214-e3054a400f2a'
});
console.log(response);

Submit form data

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getData("http://httpbin.org/ip", {
//This field is added when we want to scrap data after login or sign up.
	formData: {
			formSelector: 'FORM_SELECTOR',//Supports values like `'form[class="unique_class"]'`
			submitButtonSelector: 'SUBMIT_BUTTON_SELECTOR',//Supports values like `'button[class="unique_class"]'`
			formSelectorScript: 'FORM_SELECTOR_SCRIPT',//Supports values like `document.getElementById("demo")`
			submitButtonSelectorScript: 'SUBMIT_BUTTON_SELECTOR_SCRIPT',//Supports values like `document.getElementById("demo")`
			formFields: [
				{
					value: 'VALUE_TO_PASS_IN_FORM',//Add value of form input fields
					selectorScript: 'SELECT_INPUT',//Supports values like `'input[class="unique_class"]','span[class="unique_class"]'`
					isScript: 'BOOLEAN'//If your selector has JavaScript code then make this true
				}
			]
		},
	isKeepFormDataSelection: true,

});
console.log(response);

Add dynamic inputs

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getData("http://httpbin.org/ip", {
	parserSubscriptionId: 'YOUR_PARSER_SUBSCRIPTION_ID',
   //These dynamic inputs field is required when some input fields are required to get data of page
	dynamicInputs: [
		{
			"name":"YOUR_INPUT_NAME",//Name stands for input name field like `Username`,`password`,`limit` etc
			"value":"YOUR_VALUE" //Value of name field like `abc`,`123456789`,`25`
		}
	]
});
console.log(response);

Actions

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("https://www.hilton.com/en/locations/india/?WT.mc_id=zLADA0IN1MB2PSH3GGL4INTCRB5dkt6MULTIBR7en_&epid!_&ebuy!&&&&&gad_source=1&gclid=CjwKCAiAvJarBhA1EiwAGgZl0HWfZEaLc_HWhRFRxTT3gs8pwQvFZKtLPNMj3szkjCbFzlef4ox_XxoCGDYQAvD_BwE&gclsrc=aw.ds", {
	customSelectors: [{
			"name": "YOUR_VALUE", //Name stands for action name and it supports only 2 actions like `waitForElement` and `click`
			'selectorScript': "YOUR_SELECTOR", //Supports values like `'a[href="google.com"]', 'span[class="unique_class"]', document.getElementById("demo")`
			'options': null, //This options support timeout feature only like `{"timeout":3000}`
			'isScript': false //If your selector has JavaScript code then make this true
		}],
		keepSelection: true
});
console.log(response);

Scroll To Bottom Of The Page

const QuickScraper = require("quickscraper-sdk");
const QuickScraperClient = new QuickScraper();
QuickScraperClient.setAccessToken("YOUR_ACCESS_TOKEN");
const response = await QuickScraperClient.getHtml("YOUR_REQUEST_URL", {
	isScroll: true,
	scrollTimeout: 1000 // Consider as milliseconds, Wait for start scraping
});
console.log(response);

Do you need an expert?

Are you finding a developer for your world-class product? If yes, please contact here. Originally by QuickScraper Developers - app@quickscraper.co.

2.0.8

1 month ago

2.0.7

4 months ago

2.0.5

6 months ago

2.0.6

6 months ago

2.0.3

10 months ago

2.0.2

10 months ago

2.0.4

10 months ago

2.0.1

10 months ago

2.0.0

11 months ago

1.1.9

1 year ago

1.1.8

1 year ago

1.1.7

1 year ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.1

2 years ago

1.1.2

2 years ago

1.0.13

2 years ago

1.0.12

2 years ago

1.0.11

3 years ago

1.0.9

3 years ago

1.0.10

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.2

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago