4.0.2 • Published 12 months ago

indeed-job-scraper v4.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

Indeed Job Scraper :flashlight:

A node.js application to scrape jobs from Indeed website


Install

npm install indeed-job-scraper

:warning: Please be sure the browser executable is downloaded at ~/.cache/puppeteer/ after the installation process, otherwise you can download it directly by running node node_modules/indeed-job-scraper/node_modules/puppeteer/ from your working package, or simply run: npm run browser-install


How to use ?

//import the required modules
let { getJobsList , getJobsPDF, release, config } = require("indeed-job-scraper");
let fs   = require("fs");
let path = require("path");


//get job list data
getJobsList({
	query : "php",
	fromdays : 1,
	sitetype: "employer",
	sort     : "date",
	maxperpage : 20,
	level      : "senior_level",
})
.then(console.log)
.then(release);




//get job list as a PDF report
getJobsPDF({
	query      : "Android Developer",
	fromdays   : 2,
	sort       : "date",
	maxperpage : 20,
	level      : "senior_level",
}).then((pdfBuffer) => {
	fs.writeFileSync(path.join(__dirname , "./jobs.pdf") , pdfBuffer);
}).then(release);

Pagination

The application is designed to follow the next pages, but the user can limit the number of visited pages


URL paramters

The params object contains 17 properties denoting the search criteria, this number is expected to be change in the future

ParamterIndeed Default valueDescription
query""search query
hireTypeanydirecthire to fetch jobs directly from companies only
levelanyentry_level , mid_level or senior_level
salaryanysalary per year i.e 45K , 30000 or salary range 45K - 90K
radius0radius to search with i.e 30 miles or in exact location
locationanycity , state , zip code or 'remote'
sortrelevanceshould be relevance or date
siteTypeanyshould be jobsite or employer
jobTypeanyshould be one of fulltime, parttime, contract, internship, temporary or commission
fromDaysallnumber of days since a job was published
duplicateuniqueunique to filter duplication or all to enable them
maxPerPage10maximum number of jobs per page

configurations

You can change app configurations based on your needs i.e locality domain

let { config } = require("indeed-job-scraper");

config["max-pages"] = 4 //the maximum number of visited pages
config["base-URL"]  = "https://uk.indeed.com/"; //change the locality domain to restrict the search results to your country
config["verbose"]   = true;  //to deliver information about current processing

TODO

  • To enhance paramters filtering :thumbsup:
  • To support other countries domain :thumbsup:
  • To support advanced search criteria as possible :thumbsup:
4.0.2

12 months ago

4.0.1

2 years ago

4.0.0

2 years ago

3.1.3

2 years ago

3.1.2

2 years ago

3.1.1

2 years ago

3.1.0

2 years ago

3.0.1

2 years ago

3.0.0

2 years ago

2.1.0

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago