Naukri Jobs Scraper avatar

Naukri Jobs Scraper

Pricing

from $0.26 / 1,000 jobs

Go to Apify Store
Naukri Jobs Scraper

Naukri Jobs Scraper

Search public Naukri job listings by keyword and location. Some runs come back short when Naukri limits what it serves, and you only pay for the rows that actually arrive.

Pricing

from $0.26 / 1,000 jobs

Rating

0.0

(0)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Naukri Jobs Scraper: public job listings from India, by keyword and city

Search Naukri by keyword, optionally narrowed to Indian cities, and get one row per job. Title, company, location, the experience band, salary where the employer published it, the skills tags, when it went up, the listing snippet and the public apply URL. No login and no Naukri account.

The honest part: some runs come back shorter than you asked for, because Naukri limits what it serves. You only pay for the rows that actually arrive, and a run that comes back light is a real outcome rather than a fault you can configure away.

InputKeywords, and optionally Indian cities
OutputOne row per job
Ceiling1,000 jobs per run
Account neededNone, and no Naukri login
Price$0.38 per 1,000 jobs on the free plan, less on paid plans

🔍 What Naukri Jobs Scraper does

Every keyword is searched against every location you give it, so two queries and three cities is six searches. Results are deduplicated on Naukri's own job ID across all of them, so the same listing appearing under two keywords costs you once.

Listings Naukri hands back that do not actually match what you asked for are dropped before anything is charged. That matters on Naukri, where a thin search gets padded out with unrelated roles.

Paging stops at your page limit, at your item limit, at an empty page, or at the first page that brings back nothing new.

📥 What you give it

{
"searchQueries": ["python developer", "data engineer"],
"locations": ["Bengaluru", "Hyderabad"],
"maxItems": 200,
"maxPagesPerSearch": 5
}
FieldDefaultWhat it is
searchQueriesempty listKeywords or job titles. The Console box starts at python developer; an API call has to send its own.
locationsempty listIndian city or region names. Leave it empty to search the whole country.
experiencenoneAn experience label to keep, written the way Naukri writes it, such as 3-5 Yrs.
maxItems1001 to 1,000 unique jobs across every search.
maxPagesPerSearch51 to 25 pages per keyword and location pair.
requestTimeoutSecs3510 to 90 seconds for one request.
includeDetailsonKeeps the public listing snippet that comes back with the search card.
useBrowserFallbackonLets a refused search try again another way. Leave it on; turning it off makes short runs more likely.
maxProxyRetries10 to 3 further attempts after a refusal.
proxyConfigurationnoneOptional network settings. Your own servers, if you give any, are used exactly as supplied.

Do not search with a term where every word is under three letters. QA, HR and UI switch the relevance filter off, and unrelated listings then come back and are charged. Write QA engineer or HR manager instead.

📤 What you get back

A real row from a recent run, with the snippet and the URL cut short:

{
"ok": true,
"charged": true,
"jobId": "120926013305",
"title": "Python Developer",
"company": "Infosys",
"location": "Hybrid - Hyderabad, Bengaluru, Delhi / NCR",
"experience": "5-8 Yrs",
"salary": "Not disclosed",
"skills": ["python", "Numpy", "sql", "Pandas", "etl", "Automation", "..."],
"postedAt": "2026-09-12T10:06:08.296Z",
"description": "We are looking for an experienced Python Developer with 5-8 years ...",
"url": "https://www.naukri.com/job-listings-python-developer-infosys-hyderabad-...",
"query": "python developer",
"searchLocation": null,
"source": "direct-http+token"
}
FieldWhat it is
jobIdNaukri's own ID. Stable, and the deduplication key across runs.
salaryWhat the employer published. On Naukri that is very often the literal string Not disclosed, which is a value, not a missing field.
experienceThe band as Naukri shows it, like 5-8 Yrs. Text, not numbers.
skillsThe tags on the listing card, as an array.
postedAtA real timestamp when Naukri gives one, otherwise the label it displayed.
descriptionThe public snippet from the search card, and it keeps Naukri's own <br> tags. Empty when includeDetails is off.
locationOne string, exactly as shown, so a multi-city listing stays one row.
query, searchLocationWhich of your searches produced this row. searchLocation is null on a nationwide search.

🧾 Reading the output

Three kinds of row can land in your dataset.

RowHow to spot itCharged
A job_sample and _diagnostic both absent, and a jobIdyes
The sample row_sample: trueno
A diagnostic_diagnostic: true and a codeno

Filter on _sample and _diagnostic being absent. Do not filter on charged: it is stamped on a row when the row is built, so it is a label for what kind of row this is, not a receipt. And do not filter on ok alone, because the sample row is ok: true and looks like a real job in the table.

Diagnostics carry code, not errorCode. BLOCKED is the one you will actually see: Naukri refused that search, and nothing from it was delivered or charged. The row also records which search it was and how far it had got.

▶️ How to run it

  1. Open Naukri Jobs Scraper and click Try for free.
  2. Put your keywords into Search queries, one per line.
  3. Add Indian cities to Locations, or leave it empty for the whole country.
  4. Leave Maximum jobs at 100 for a first run, then click Start.
  5. Download the dataset as JSON, CSV or Excel, or read it from the Apify API.

💰 How much does it cost?

$0.38 per 1,000 jobs on the free plan. It falls with your Apify plan: $0.34 on Bronze, $0.30 on Silver, and $0.26 on Gold, Platinum and Diamond.

You pay per job row delivered. Duplicates across your searches, listings dropped for not matching your query, the sample row and diagnostic rows are all free.

💡 What people use it for

  • Recruiters watching which companies are hiring for a stack in Bengaluru or Hyderabad this week.
  • Job boards pulling Indian listings on a schedule and deduplicating on jobId.
  • Tracking the skills tags that keep appearing against a role, straight out of skills.
  • Comparing experience bands being asked for across cities, using experience.
  • Building a company shortlist by running an employer name as the keyword.

🚧 What it does not do

  • Search-card fields only. Whatever Naukri puts on the result card is what you get. There is no visit to the full job page.
  • No logins, no applications, no candidate data. Public listings, read the way a visitor sees them.
  • Salary is often Not disclosed, because Indian listings frequently omit it. No number is inferred.
  • Runs can come back short. Naukri limits what it serves, and when a search is refused you get an uncharged diagnostic rather than filler.
  • Rows land at the end of the run, which has a 15 minute ceiling. A very large search can run out of time and deliver nothing, so keep maxItems and maxPagesPerSearch sensible and run more often instead.
  • 1,000 jobs per run is the hard ceiling. For more, split by keyword or by city.
  • experience matches the visible label, so it only keeps rows whose band is written exactly the way you typed it.

🧭 Which jobs scraper do you need?

If you wantUse
Jobs on Naukri in IndiaThis one
Gulf jobs from NaukrigulfNaukrigulf Jobs Scraper
Jobs in Australia and New ZealandSEEK Jobs Scraper
Jobs across 11 countries on IndeedIndeed Jobs Scraper
Jobs posted on LinkedInLinkedIn Jobs Scraper

❓ Questions people ask

Do I need a Naukri account? No. A keyword is enough.

Why did I get fewer jobs than I asked for? Either the search genuinely has fewer, or Naukri served less than it holds. You pay for what arrived, not for what you asked for.

Why is salary "Not disclosed" on most rows? Because that is what the employer published. It is the site's own wording, kept as it stands.

Can I search several cities at once? Yes. Every keyword runs against every location, and the results are deduplicated on job ID before anything is charged.

Can I get the full job description? Not the full page. You get the public snippet from the search card when includeDetails is on.

Is scraping job listings legal? These are public job adverts. They can name real people, which GDPR and India's own data rules cover, so have a reason for collecting them and keep to a sensible request rate. Apify's write-up on scraping and the law is a good place to start, and we are not lawyers.

🆘 If something breaks

Open the Issues tab on the actor page. Send the keyword, the city and the run ID. The code on the diagnostic row, plus the search it names, usually points straight at the problem.