# 🔥Dice.com FULL Job Scraper🔥 (`mohamedgb00714/dicecom-job-scraper`) Actor

Scrapes job listings from Dice.com, including detailed information, and handles pagination.  Supports keyword search, location search, and various filters (employment type, employer type, workplace type, posted date, easy apply, willing to sponsor).

- **URL**: https://apify.com/mohamedgb00714/dicecom-job-scraper.md
- **Developed by:** [mohamed el hadi msaid](https://apify.com/mohamedgb00714) (community)
- **Categories:** Developer tools, Automation, Jobs
- **Stats:** 17 total users, 0 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

````markdown
## Dice.com Job Scraper Actor

This Apify actor scrapes job listings from Dice.com. It allows you to search for jobs based on keywords, location, and various filters, and it extracts detailed information about each job listing.  It handles pagination by clicking the "Next Page" button, even if the navigation is handled by JavaScript.

### Input

The actor accepts the following input parameters:

| Parameter        | Type    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Required |
| ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------: |
| `query`          | String  | The search query (keywords).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |    No    |
| `location`       | String  | The search location.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |    No    |
| `postedDate`     | String  | Filter jobs by posted date (e.g., "Any Date", "Today", "Last 3 Days", "Last 7 Days").                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |    No    |
| `FULLTIME`       | Boolean | Filter for full-time jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |    No    |
| `PARTTIME`       | Boolean | Filter for part-time jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |    No    |
| `CONTRACTS`      | Boolean | Filter for contract jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |    No    |
| `THIRD_PARTY`    | Boolean | Filter for third-party jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |    No    |
| `Direct Hire`    | Boolean | Filter for direct hire jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |    No    |
| `Recruiter`      | Boolean | Filter for recruiter jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |    No    |
| `Other`          | Boolean | Filter for other job types.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |    No    |
| `On-Site`        | Boolean | Filter for on-site jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |    No    |
| `Remote`         | Boolean | Filter for remote jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |    No    |
| `Hybrid`         | Boolean | Filter for hybrid jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |    No    |
| `easyApply`      | Boolean | Filter for easy apply jobs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |    No    |
| `willingToSponsor` | Boolean | Filter for jobs where the employer is willing to sponsor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |    No    |
| `limit`          | Number  | The maximum number of job listings to scrape (optional). If not provided, it defaults to 100.  This is important for preventing your actor from running for too long and to respect website rate limits.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |    No    |

**Important:** If both `query` and `location` are not provided, the actor will perform a general search (equivalent to searching with empty keywords and location).

### Output

The actor's output is a dataset containing an array of job listing objects. Each object has the following structure:

```json
{
  "id": "job_id_string",
  "title": "Job Title",
  "jobLocation": { /* Job Location Object */ },
  "postedDate": "Date string (ISO 8601 format)",
  "detailsPageUrl": "URL to the job details page",
  "companyPageUrl": "URL to the company page",
  "companyLogoUrl": "URL to the company logo",
  "companyLogoUrlOptimized": "URL to optimized company logo",
  "salary": "Salary range (string)",
  "clientBrandId": "Company ID",
  "companyName": "Company Name",
  "employmentType": "Employment Type (e.g., Full-time, Part-time)",
  "summary": "Job Summary",
  "jobId": "Job ID",
  "score": "Relevance Score",
  "easyApply": "Boolean (true if easy apply)",
  "willingToSponsor": "Boolean (true if willing to sponsor)",
  "employerType": "Employer Type",
  "workFromHomeAvailability": "Boolean",
  "isRemote": "Boolean",
  "modifiedDate": "Date string (ISO 8601 format)",
  "guid": "Job GUID",
  "workplaceTypes": ["Workplace Type 1", "Workplace Type 2", ...],
  "isFeatured": "Boolean"
}
````

### Running the Actor

You can run this actor on the Apify platform or locally using the Apify CLI.  See the Apify documentation for instructions on how to deploy and run actors.

### Limitations

- This actor is designed to scrape data from Dice.com. Changes to the Dice.com website structure may require updates to the actor's code.
- The `limit` input parameter is crucial for controlling the execution time and preventing excessive requests.  It is highly recommended to use it.
- Always respect the website's terms of service and robots.txt when scraping data.

# Actor input Schema

## `query` (type: `string`):

Keywords to search for in job titles and descriptions.

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

Location to search for jobs (city, state, or zip code).

## `postedDate` (type: `string`):

Filter by posted date.

## `FULLTIME` (type: `boolean`):

Filter for full-time jobs.

## `PARTTIME` (type: `boolean`):

Filter for part-time jobs.

## `CONTRACTS` (type: `boolean`):

Filter for contract jobs.

## `THIRD_PARTY` (type: `boolean`):

Filter for third-party jobs.

## `Direct Hire` (type: `boolean`):

Filter for direct hire jobs.

## `Recruiter` (type: `boolean`):

Filter for recruiter jobs.

## `Other` (type: `boolean`):

Filter for other jobs.

## `On-Site` (type: `boolean`):

Filter for on-site jobs.

## `Remote` (type: `boolean`):

Filter for remote jobs.

## `Hybrid` (type: `boolean`):

Filter for hybrid jobs.

## `easyApply` (type: `boolean`):

Filter for Easy Apply jobs.

## `willingToSponsor` (type: `boolean`):

Filter for jobs where the employer is willing to sponsor.

## `limit` (type: `integer`):

Maximum number of jobs to scrape (optional).

## Actor input object example

```json
{
  "query": "Software Engineer",
  "location": "New York, NY",
  "postedDate": "Today",
  "FULLTIME": false,
  "PARTTIME": false,
  "CONTRACTS": false,
  "THIRD_PARTY": false,
  "Direct Hire": false,
  "Recruiter": false,
  "Other": false,
  "On-Site": false,
  "Remote": false,
  "Hybrid": false,
  "easyApply": false,
  "willingToSponsor": false,
  "limit": 1000
}
```

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("mohamedgb00714/dicecom-job-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 = {}

# Run the Actor and wait for it to finish
run = client.actor("mohamedgb00714/dicecom-job-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{}' |
apify call mohamedgb00714/dicecom-job-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,mohamedgb00714/dicecom-job-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/aYBbZn6pjOPPGQefg/builds/pbpBg79SNNmLWtGVg/openapi.json
