# Naukri.com Jobs Scraper (`parseforge/naukri-com-scraper`) Actor

Scrape job listings from Naukri.com, India's largest job portal. Search by keyword, location, experience, work type, and sort order. Extract job title, company, salary, skills, description, ratings, and 15+ structured fields per listing. Fast API-based extraction, no browser needed.

- **URL**: https://apify.com/parseforge/naukri-com-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Jobs, Developer tools, Automation
- **Stats:** 2 total users, 2 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $8.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 💼 Naukri.com Jobs Scraper

Collect job listings from Naukri.com, India's largest job portal, without coding. This scraper extracts job title, company, salary range, required skills, location, experience, company ratings, and posting date, making it perfect for job seekers building custom job feeds, recruiters monitoring the Indian job market, or data analysts researching hiring trends across India.

> **The Naukri.com Jobs Scraper collects Indian job listings with up to 17 data fields per job, including salary parsing, skills extraction, and company ratings from AmbitionBox.**

### ✨ What Does It Do

- 📝 **Job Title** - Track exact job positions to identify hiring trends for specific roles across India
- 💼 **Company Name** - See which companies are actively hiring for your target skills
- 🌍 **Location** - Filter opportunities by city (Bangalore, Mumbai, Delhi, Hyderabad, and more)
- 💰 **Salary Range** - Collect minimum and maximum salary data for compensation analysis
- 🛠️ **Required Skills** - Identify technical skills in demand across current openings
- 📋 **Job Description** - Read job posting snippets for quick market research
- 📅 **Posting Date** - Track freshness of listings and hiring cycles
- ⭐ **Company Rating** - Get AmbitionBox ratings and review counts for each employer

### 🔧 Input

- **Search Keyword** - What job title or skill to search for (e.g. python developer, data analyst, react)
- **Max Items** - How many job listings to collect per run
- **Location** - City to filter jobs (e.g. bangalore, mumbai, delhi)
- **Minimum Experience** - Filter by years of experience required
- **Sort By** - Sort results by relevance or date posted
- **Work Type** - Filter by work from office, remote, or hybrid

Example input:
```json
{
  "keyword": "python developer",
  "location": "bangalore",
  "maxItems": 10
}
````

### 📊 Output

Each job listing includes up to 17 data fields. Download as JSON, CSV, or Excel.

| 📝 Job Title | 💼 Company Name | 🌍 Location |
|---|---|---|
| 💰 Salary (text) | 📊 Salary Min | 📊 Salary Max |
| 🛠️ Required Skills | 📋 Job Description | 📅 Date Posted |
| 🔗 Job URL | 🆔 Job ID | 🏢 Company Logo |
| ⭐ Company Rating | 📝 Review Count | 🚶 Walk-in Job |
| 👔 Experience | ⏰ Scraped At | ⚠️ Error (if any) |

### 💎 Why Choose the Naukri.com Jobs Scraper?

| Feature | Our Actor |
|---|---|
| Fast API-based extraction (no browser needed) | ✔️ |
| Salary parsing (min, max extraction) | ✔️ |
| Skills and experience extraction | ✔️ |
| Company ratings from AmbitionBox | ✔️ |
| Location and work type filtering | ✔️ |
| CSV, Excel, and JSON export | ✔️ |
| Automatic retry logic with backoff | ✔️ |
| Support for large-scale collection (1 million+ items) | ✔️ |
| Track posting date and scrape timestamp | ✔️ |

### 📋 How to Use

No technical skills required. Follow these simple steps:

1. **Sign Up** - [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp)
2. **Find the Tool** - Search for "Naukri.com Jobs Scraper" in the Apify Store and enter your search keyword
3. **Run It** - Click "Start" and watch your results appear

That's it. No coding, no setup needed. Export your data in CSV, Excel, or JSON format.

### 🎯 Business Use Cases

- 📊 **Data Analyst** - Monitor salary trends across Indian tech jobs for 100+ roles monthly to publish quarterly compensation benchmarks
- 💼 **Technical Recruiter** - Collect active developer listings daily from Naukri to identify passive candidates before competitors reach them
- 🔬 **Market Researcher** - Track job growth by city and skill to measure the Indian tech sector's expansion

### ❓ FAQ

**🔍 How does this scraper work?**
The scraper connects to Naukri.com's internal API and extracts job fields into structured records. No browser or HTML parsing needed. Pure API access for fast and reliable results.

**📊 How accurate is the salary data?**
Salary data comes directly from the job postings. We parse salary ranges into minimum and maximum fields when available. If a posting does not include salary information, those fields will be empty. Accuracy depends on how consistently employers fill in salary details.

**📅 Can I schedule this to run automatically?**
Yes. Use the Apify scheduler to run this actor on a daily, weekly, or monthly basis. You can also integrate it with Make, Zapier, or GitHub Actions for automated job feed updates.

**⚖️ Is scraping Naukri.com allowed?**
Naukri.com is a public job portal. You are collecting publicly visible job listing data. Always review the site terms of service and ensure your use case complies with local laws and regulations.

**⚡ How long does a run take?**
A run collecting 10 jobs takes a few seconds. Collecting 1,000 jobs typically takes under a minute. The API returns up to 100 results per page.

**⚠️ Are there any limits?**
Free users get up to 10 items. Paid users can collect up to 1,000,000 results.

### 🔗 Integrate Naukri.com Jobs Scraper with any app

- [Make](https://docs.apify.com/platform/integrations/make) - Automate workflows
- [Zapier](https://docs.apify.com/platform/integrations/zapier) - Connect 5000+ apps
- [GitHub](https://docs.apify.com/platform/integrations/github) - Version control integration
- [Slack](https://docs.apify.com/platform/integrations/slack) - Get notifications
- [Airbyte](https://docs.apify.com/platform/integrations/airbyte) - Data pipelines
- [Google Drive](https://docs.apify.com/platform/integrations/drive) - Export to spreadsheets

### 💡 More ParseForge Actors

- [Monster Jobs Scraper](https://apify.com/parseforge/monster-scraper) - Collect job listings from Monster.com with salary, skills, and 25+ fields
- [FINRA BrokerCheck Scraper](https://apify.com/parseforge/finra-brokercheck-scraper) - Search and extract broker and firm registration records
- [Copart Public Search Scraper](https://apify.com/parseforge/copart-public-search-scraper) - Extract vehicle auction listings with damage details and bidding data
- [Hugging Face Model Scraper](https://apify.com/parseforge/hugging-face-model-scraper) - Collect AI model data from Hugging Face with downloads and tags
- [AWS Marketplace Scraper](https://apify.com/parseforge/aws-marketplace-scraper) - Extract software product listings from AWS Marketplace

Browse our complete collection of [data extraction tools](https://apify.com/parseforge) for more.

### 🚀 Ready to Start?

[Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) and collect your first 100 results for free. No coding, no setup.

### 🆘 Need Help?

- Check the FAQ section above for common questions
- Visit the [Apify support page](https://docs.apify.com) for documentation and tutorials
- Contact us to request a new scraper, propose a custom project, or report an issue at [Tally contact form](https://tally.so/r/BzdKgA)

### ⚠️ Disclaimer

> This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Naukri.com (Info Edge India Ltd.) or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.

# Actor input Schema

## `keyword` (type: `string`):

Job title or keywords to search for (e.g. python developer, data analyst, react)

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## `location` (type: `string`):

City to filter jobs (e.g. bangalore, mumbai, delhi, hyderabad). Leave empty for all locations.

## `experience` (type: `integer`):

Minimum years of experience required. Leave empty for all experience levels.

## `sortBy` (type: `string`):

How to sort the search results

## `workType` (type: `string`):

Filter by work arrangement

## Actor input object example

```json
{
  "keyword": "python developer",
  "maxItems": 10,
  "sortBy": "relevance",
  "workType": ""
}
```

# Actor output Schema

## `overview` (type: `string`):

Overview of job listings with key fields

## `fullData` (type: `string`):

Complete dataset with all scraped job fields

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keyword": "python developer",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/naukri-com-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keyword": "python developer",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/naukri-com-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keyword": "python developer",
  "maxItems": 10
}' |
apify call parseforge/naukri-com-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/naukri-com-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Naukri.com Jobs Scraper",
        "description": "Scrape job listings from Naukri.com, India's largest job portal. Search by keyword, location, experience, work type, and sort order. Extract job title, company, salary, skills, description, ratings, and 15+ structured fields per listing. Fast API-based extraction, no browser needed.",
        "version": "1.0",
        "x-build-id": "cIuinLLJOdltSB93A"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~naukri-com-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-naukri-com-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~naukri-com-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-naukri-com-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~naukri-com-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-naukri-com-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "keyword"
                ],
                "properties": {
                    "keyword": {
                        "title": "Search Keyword",
                        "type": "string",
                        "description": "Job title or keywords to search for (e.g. python developer, data analyst, react)"
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "City to filter jobs (e.g. bangalore, mumbai, delhi, hyderabad). Leave empty for all locations."
                    },
                    "experience": {
                        "title": "Minimum Experience (years)",
                        "minimum": 0,
                        "maximum": 30,
                        "type": "integer",
                        "description": "Minimum years of experience required. Leave empty for all experience levels."
                    },
                    "sortBy": {
                        "title": "Sort By",
                        "enum": [
                            "relevance",
                            "date"
                        ],
                        "type": "string",
                        "description": "How to sort the search results",
                        "default": "relevance"
                    },
                    "workType": {
                        "title": "Work Type",
                        "enum": [
                            "",
                            "office",
                            "remote",
                            "hybrid"
                        ],
                        "type": "string",
                        "description": "Filter by work arrangement",
                        "default": ""
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
