Dice Jobs Scraper — US Tech, Salary Parsed avatar

Dice Jobs Scraper — US Tech, Salary Parsed

Pricing

from $0.60 / 1,000 results

Go to Apify Store
Dice Jobs Scraper — US Tech, Salary Parsed

Dice Jobs Scraper — US Tech, Salary Parsed

Scrape Dice.com tech job listings with parsed numeric salary, structured location, remote/on-site status and Easy Apply flag.

Pricing

from $0.60 / 1,000 results

Rating

0.0

(0)

Developer

Axery

Axery

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Dice Jobs Scraper (US Tech)

Scrapes job listings from dice.com, the leading US tech-recruiting board, over plain HTTP — no browser, no login, no cookies.

What makes this different

Salary parsed into numbers. Dice publishes salary as a display string on roughly half of listings ("USD 229,900.00 - 262,400.00 per year"), which this Actor splits into numeric min/max, currency and period — the rest carry a placeholder sentence instead of a figure, which is not a parsing failure.

Employer type. employer_type distinguishes a direct employer from a staffing/recruiting firm — useful for filtering out agency reposts.

Easy Apply flag. easy_apply marks listings supporting Dice's one-click apply flow.

One schema across boards. Same record shape as the SEEK, JobStreet, Himalayas, RemoteOK, ZipRecruiter, Bayt, InfoJobs and Xing Actors in this suite, with a source-prefixed job_id.

How it gets through

There is no public JSON search endpoint — job-search-api.svc.dhigroupinc.com returns 403 with a stale public web key found in Dice's own JS bundle. This Actor does not use that API at all. Instead it reads the website's own results page, decoding the Next.js React Server Component payload where the full job records live — the same technique this suite's ZipRecruiter Actor uses. The website itself was not blocked under any TLS fingerprint tested.

Input

FieldTypeNotes
keywordstringA job title or skill, e.g. python, devops.
locationstringCity, state, or "Remote". Optional.
maxItemsintegerPer query. Pages automatically (~30/page) until this limit or the reachable depth.
incrementalbooleanOnly listings not seen in previous runs.
proxyConfigurationobjectDatacenter is enough — no IP-reputation gate observed on the website.

Known limits

  • Salary present on roughly half of listings. A null salary.min usually means Dice's own placeholder text was there instead of a figure — check salary.raw.
  • Layout coupling. Because the data comes from an RSC payload rather than a documented API, a front-end rewrite can break extraction. The client fails loudly with a specific message rather than silently returning zero rows.

Local development

pip install -r requirements.txt
python test_local.py python --max 20 --out sample_output.json
python test_local.py "data engineer" --location "Austin, TX" --max 10

sample_output.json in this folder is real output from a live run, kept so the schema can be reviewed without running anything.