Naukri Job Scraper: Salaries, Contacts & Company Ratings
Pricing
from $2.00 / 1,000 results
Naukri Job Scraper: Salaries, Contacts & Company Ratings
Scrape Naukri.com jobs by keyword, city, experience, salary, work mode and freshness. Every job comes with parsed salary and experience ranges, skills, the company rating and review count, the real employer behind consultancy postings, and any recruiter email or phone the posting names.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Kelopr_bk
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Naukri Job Scraper — Jobs, Salaries, Contacts & Company Ratings
Pull job listings from Naukri.com, India's largest job board, by keyword, city, experience, pay, work mode and freshness — and get every posting back as one clean row with the numbers already parsed.
No login. No cookies. No setup.
Why this one
Naukri publishes almost everything as display text: 8-14 Lacs PA, 3-8 Yrs, Not Disclosed. Most
scrapers hand you that text and leave the work to you. This one gives you the label and the parsed
values, so the data is usable the moment it lands.
It also answers three questions the raw listing does not:
- Is the pay real?
salaryDisclosedseparates published salaries from hidden ones, so your averages are not silently poisoned by zeros. - Who is actually hiring? Consultancies place a large share of Indian job ads under their own name.
isConsultantPostingandhiringForCompanytell you when you are looking at an agency and who the role is really for. - Is the employer any good? Every row carries the company's AmbitionBox rating and review count.
What one job looks like
{"jobId": "011125005678","title": "Area Sales Manager","url": "https://www.naukri.com/job-listings-area-sales-manager-...","companyName": "Onsite Teams","companyUrl": "https://www.naukri.com/onsite-teams-jobs-careers-4589122","companyLogo": "https://img.naukimg.com/logo_images/groups/v1/4589122.gif","companyRating": 4.1,"companyReviewsCount": 132,"companyAddress": "F67, Plot 2, Manish Global Mall, Sector 22, Dwarka, New Delhi","location": "Hybrid - New Delhi, Gurugram","locations": ["New Delhi", "Gurugram"],"workMode": "Hybrid","salaryLabel": "8-14 Lacs PA","salaryDisclosed": true,"salaryMinPerYear": 800000,"salaryMaxPerYear": 1400000,"salaryCurrency": "INR","experienceLabel": "3-8 Yrs","experienceMinYears": 3,"experienceMaxYears": 8,"skillsPreferred": ["Field Sales"],"skillsOther": ["Sales", "Enterprise Sales"],"jobRole": "Area Sales Manager (B2B)","roleCategory": "Enterprise & B2B Sales","functionalArea": "Sales & Business Development","industry": "IT Services & Consulting","employmentType": "Full Time, Permanent","educationUG": ["Any Graduate"],"applyCount": 87,"viewCount": 411,"vacancies": 1,"postedAt": "2026-08-13 13:09:02","postedLabel": "Today","isConsultantPosting": false,"isWalkIn": false,"contactEmails": ["dhruv.tomar@onsiteteams.com"],"contactWebsites": ["https://onsiteteams.com/"]}
59 fields in total, including the full description in text and HTML.
The fields worth paying for
Salary you can actually sort on
salaryMinPerYear and salaryMaxPerYear come back as plain INR numbers — lakhs and crores already
converted. salaryDisclosed marks the rows where the employer really published a figure.
Most Indian listings hide pay. Filter to salaryDisclosed = true and you get a clean benchmark instead of
an average dragged to zero.
Recruiter contacts, when the posting names them
Applications usually route through Naukri, but consultancy ads routinely paste a recruiter's details into the description. When they do, you get them structured:
"contactEmails": ["hiring@acme.co.in"],"contactPhones": [{ "raw": "+91 98765 43210", "digits": "919876543210" }],"contactWebsites": ["https://acme.co.in/careers"],"contactSocialProfiles": { "linkedin": ["https://linkedin.com/company/acme"] }
Nothing is invented — these appear only when the posting actually contains them.
Signals nobody else surfaces
diversityTag/isExclusiveRole— Naukri marks roles reserved for specific groups, e.g. "For women"skillsPreferredvsskillsOther— the must-haves separated from the nice-to-havesisWalkIn— walk-in interviews, which hire on a completely different timelineapplyCountandviewCount— how much competition a posting already hasappliesOffsite— whether applying leaves Naukri for the company's own site
The market behind your search
Every run also saves a breakdown of the whole result set — not just the rows you paid for:
{"totalJobsAvailable": 28571,"breakdown": {"salaryRanges": [{ "label": "6-10 Lakhs", "count": 26445 }, ...],"cities": [{ "label": "Bengaluru", "count": 8112 }, ...],"departments": [...], "industries": [...], "workModes": [...]}}
Size a market, then decide how much of it to scrape. It lands in the run's key-value store as
SUMMARY-<your-keyword>.
Input
| field | what it does |
|---|---|
keywords | one search phrase per entry — each is searched separately |
location | city or region, as typed on Naukri |
jobIds | scrape specific postings directly, skipping search |
maxItems | stops the run once this many jobs are saved |
sortBy | relevance · newest first · salary high→low · salary low→high |
jobAgeDays | last 24 hours · 3 days · week · 15 days · 30 days |
experienceYears | jobs open to a candidate with this many years |
workMode | work from office · remote · hybrid |
salaryBand | one of Naukri's pay bands, from 0-3 up to 75-100 lakhs |
fetchJobDetails | off = faster and cheaper, search fields only |
dedupe | one row per job ID across all your keywords |
Bad input never costs you a run: it is rejected before a single request, with a message naming the field and the fix.
Recipes
Fresh remote jobs, best paid first
{ "keywords": ["python developer"], "workMode": "remote","jobAgeDays": "7", "sortBy": "salaryHighToLow", "maxItems": 200 }
Direct employers only — skip the agencies
{ "keywords": ["data analyst"], "location": "Bengaluru", "maxItems": 300 }
Then keep rows where isConsultantPosting is false.
Recruiter leads
{ "keywords": ["urgent hiring"], "location": "Mumbai", "maxItems": 300 }
Then keep rows that have contactEmails or contactPhones.
Salary benchmark for a role
{ "keywords": ["devops engineer"], "maxItems": 500 }
Filter to salaryDisclosed = true, then average salaryMinPerYear and salaryMaxPerYear.
Track one company's hiring
{ "keywords": ["Infosys"], "jobAgeDays": "7", "maxItems": 200 }
Output
Three ready-made views, exportable to CSV, Excel, JSON or XML, or readable straight from the API:
- Jobs — title, company, location, salary, experience, rating, link
- Salary & experience — the parsed numeric ranges
- Contacts & employer — agency flag, real employer, recruiter contacts
FAQ
Do I need a Naukri account? No. Nothing here needs a login or cookies.
Why is salary often "Not Disclosed"? Because most Indian employers hide it. salaryDisclosed tells you
which rows carry real figures.
Why do some jobs have no contacts? Because the posting did not include any — applications normally go through Naukri itself. Consultancy ads are where contacts usually show up.
Why only one work mode or pay band at a time? Naukri itself accepts a single value for each. The input mirrors what the site can actually do, rather than pretending and returning nothing.
How fresh is the data? Every run is live — nothing is served from a cache.
Does it cover Naukri Gulf? Not yet. This scraper targets naukri.com (India).
How much does it cost? You pay per job saved, and the price on this page is all-in.
Something looks wrong? The run summary lists every issue, and skipped items go to a separate errors
dataset with the reason — nothing fails silently.