Naukri Jobs Scraper - Full Descriptions & Applicant Counts
Pricing
from $0.30 / 1,000 results
Naukri Jobs Scraper - Full Descriptions & Applicant Counts
Scrape Naukri.com job listings across India by keyword and city. Title, company, AmbitionBox rating, experience, salary, skills and the complete job description - plus applicant and view counts no other Naukri scraper publishes. Remote and salary filters, CSV/JSON/Excel export.
Pricing
from $0.30 / 1,000 results
Rating
0.0
(0)
Developer
Alwin
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
14 hours ago
Last modified
Categories
Share
Naukri Jobs Scraper — scrape Naukri.com job listings from India
Get structured job data from Naukri.com, India's largest job portal, by keyword and city. Every listing comes back with the employer's AmbitionBox rating, the experience range, parsed skills and a job description — and optionally, where Naukri serves it, how many people have already applied.
No login, no Naukri account, no API key. Export to JSON, CSV or Excel, or pull it straight from the Apify API.
What this scraper gets you
| Job | title, absolute URL, posted date (real ISO timestamp), vacancies, walk-in flag |
| Company | name, Naukri careers page, logo, AmbitionBox employee rating, reviews link |
| Money | salary band, currency, and an explicit salaryDisclosed flag |
| Fit | experience range (parsed to min/max), skills as a clean list, location |
| Demand ⭐ | applicant count and view count per listing |
| Context ⭐ | full description, industry, functional area, role category, education, company profile |
⭐ = included when fullDescription is enabled.
Applicant counts turn a job board into a demand signal. In a 10-row Mumbai data-analyst run the median listing had 2,186 applicants and 5,196 views, and the most contested — Data Analyst at ICICI Lombard — had 7,913 applicants. That changes what you do with a posting, whether you are a jobseeker deciding where to spend effort, a recruiter pricing a role, or an analyst measuring real demand rather than counting adverts.
fullDescriptionis off by default because it visits each job's own page and so takes longer. Coverage is complete when it runs — the last measured platform run enriched 20 of 20 — anddescriptionIsFullmarks each row either way, so a rare miss is always visible rather than silent. The run completes regardless, and every row still ships with its full search-level data.
Quick start
{"keyword": "python developer","location": "bangalore","maxItems": 100}
Several roles and cities in one run:
{"keywords": ["data analyst", "business analyst"],"locations": ["bangalore", "mumbai", "pune"],"maxItems": 600,"workMode": "remote"}
That's 6 searches. They run interleaved, so stopping at maxItems leaves you with
every combination covered instead of 600 rows from one city. De-duplication is global —
a job listed in three cities is stored, and billed, once. Every row carries
searchKeyword and searchLocation so you always know which search produced it.
Input
| field | default | what it does |
|---|---|---|
keyword | python developer | job title, skill or keyword |
location | bangalore | Indian city; blank searches all of India |
keywords | — | several keywords at once; overrides keyword |
locations | — | several cities at once; overrides location |
maxItems | 50 | exact stop — you get the number you asked for |
fullDescription | false | complete description + applicant/view counts (slower) |
daysOld | — | only jobs posted in the last N days |
experience | — | years of experience |
workMode | — | remote, hybrid or office |
salaryBand | — | 0to3 … 75to100, lakhs per annum |
maxPages | 200 | per-search safety cap |
proxyConfiguration | RESIDENTIAL | Naukri is behind Akamai; residential is the safe default |
Filters that actually filter
Each one was measured against a known baseline of 11,276 jobs (python developer / Bangalore) before it was exposed:
| filter | result |
|---|---|
experience 0 / 3 / 8 | 339 / 3,884 / 6,364 |
daysOld 1 / 3 / 7 / 15 | 352 / 899 / 1,819 / 3,781 |
salaryBand 0to3 / 3to6 / 6to10 | 862 / 3,926 / 6,373 |
workMode: remote | every returned row's location reads Remote |
Naukri also publishes an employment-type facet and a role-category facet. Both were tested; both return the unfiltered count. They are deliberately not offered here — a filter that silently ignores you is worse than no filter.
Output
{"jobId": "240826007480","title": "Python Software Developer","url": "https://www.naukri.com/job-listings-python-software-developer-capgemini-...","companyName": "Capgemini","companyRating": "3.6","companyReviewsUrl": "https://www.ambitionbox.com/reviews/capgemini-reviews","location": "Hybrid - Hyderabad, Pune, Bengaluru","experienceText": "6-11 Yrs","minimumExperience": "6","maximumExperience": "11","salaryText": "Not disclosed","salaryDisclosed": false,"skills": ["API", "Python", "Rest", "Django", "Cloud", "Fast API"],"postedAt": "2026-09-21T11:37:26+00:00","vacancies": 6,"applyCount": 2493,"viewCount": 7423,"industry": "IT Services & Consulting","employmentType": "Full Time, Permanent","educationUG": ["Any Graduate"]}
47 fields per row. Detail-only fields are always present — null when
fullDescription is off — so the column set never changes between runs.
Two honest notes before you buy
Most Indian listings do not publish a salary. That is the market, not the scraper.
Disclosure ran 11% in a Bangalore python-developer sample and 27% in a Mumbai
data-analyst one. salaryDisclosed tells you which is which, and minimumSalary /
maximumSalary are null rather than 0 when hidden, so you can never mistake a
hidden salary for a free job. For India, skills and experienceText carry more
signal than salary does.
The fast description is not always the complete one. Without fullDescription
you get Naukri's search-result text: 72 to 4,579 characters in a 45-row sample,
median 363, and one row held only 3.8% of what its job page showed. Turn
fullDescription on and the same field runs to a median of 3,111 characters —
an 8.6× lift — on a platform run that enriched 20 of 20. descriptionIsFull marks
each row, so you always know which you got.
How it works
Naukri server-renders nothing. Its search page ships an empty "jobDetails":[] shell
and the browser then calls a JSON API sitting behind Akamai Bot Manager, which
answers 406 recaptcha required to anything that cannot prove it is a real browser.
So this actor runs a real Chromium once to let Naukri's own JavaScript mint a request token, then replays that token over plain HTTP for about 40 further requests — roughly 800 jobs per browser launch. You pay for one page load per ~800 jobs instead of one per page. Measured: 20 jobs per request, ~3.5 KB per job, 1,587 jobs in 47 seconds.
Pricing
| Result | $0.30 / 1,000 — every job row |
| Full job details | $1.70 / 1,000 — only when fullDescription is on, and only for jobs actually enriched |
| Actor start | $0.002, once per run |
Platform usage is included — you are not billed separately for compute. A run that returns nothing costs you only the start fee.
Leave fullDescription off and you pay $0.30/1,000, which is the cheapest rate for
Naukri on the Store. Turn it on and an enriched row is $2.00/1,000 all in. Jobs that
come back without their detail fields are not charged the detail rate, so a page
Naukri declines to serve costs you nothing extra.
FAQ
Do I need a Naukri account or login? No. Everything here is public job-listing data.
How many jobs can I get from one search?
Naukri caps each query's result set — a typical city+keyword search reports 11,000+
jobs. Use several locations, or narrow with daysOld, to reach further overall.
Can I get only remote jobs?
Yes — set workMode to remote. Verified: every returned row's location reads
Remote.
Why is salaryDisclosed false on most rows?
Because most Indian employers hide the salary on Naukri. See the note above.
Can I schedule this?
Yes. Use Apify Schedules, or the API, and filter with daysOld: 1 to pull only what
was posted since your last run.
Does it work for all of India?
Yes. Leave location blank for a nationwide search, or name any city —
Bangalore, Mumbai, Delhi NCR, Hyderabad, Pune, Chennai, Kolkata, Noida, Gurgaon,
Ahmedabad and the rest.
What if Naukri rate-limits my run? The run ends successfully with a status message explaining it, rather than failing — so a rate-limited minute never looks like a broken actor. Re-run shortly after.
Limits
- Page size is fixed at 20 and must not be raised. Naukri treats its page-size parameter as advisory: it will cap a response to 20 rows while still advancing the offset by the number you asked for, so requesting 100 and getting 20 silently discards 80 jobs per page while the output looks perfectly healthy. This actor never does that.
- Naukri's own reported total is unreliable under the
workModefilter — it reported 32,403 against an 11,276 baseline — so it is never used as a stopping condition.
Legal
This scrapes publicly visible job listings. It does not log in, bypass authentication, or collect candidate profiles or personal data. You are responsible for how you use the output, including under the GDPR and Naukri's terms.