eFinancialCareers Jobs Scraper
Pricing
from $0.84 / 1,000 results
eFinancialCareers Jobs Scraper
Scrapes finance and banking job listings from eFinancialCareers. Each row carries title, company, location, job type, salary and posted date, with optional full job description.
Pricing
from $0.84 / 1,000 results
Rating
0.0
(0)
Developer
Ibnu Adzim
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Share
Scrapes finance and banking job listings from eFinancialCareers, the leading job board for finance-industry roles. Each row carries title, company, location, job type, salary and posted date, with optional full job description.
What each row contains
| Field | Notes |
|---|---|
title | Job title |
company | Employer name |
location | City, country |
jobType | Permanent, Contract, etc. |
salary | Displayed value — often "Competitive" rather than a figure |
posted | Relative date, e.g. "27 days ago" |
description | Full job description (only with includeJobDetails) |
url | Listing URL |
Record types
recordType | One per | Purpose |
|---|---|---|
SEARCH_SUMMARY | query | upstream's own count, requests spent, honesty flags |
JOB | listing | the listing itself |
ERROR | failed input | so every input maps to at least one row |
Search is relevance-based, not exact-match
keyword is full-text search across a ~70,000-job corpus, the way a search
engine works — not a closed category list. There is no "invalid keyword"
this Actor can detect, because essentially any finance-adjacent phrase
matches something. Search broadly and use location to narrow, rather than
expecting an exact-title lookup.
The one real trap: an unresolved location silently drops the filter
An unrecognised location is not rejected — it silently falls back to the
worldwide result set, and the page's own displayed heading can even show an
unrelated, nonsensical placeholder string rather than an error. This Actor
detects the failure by comparing the result count against a
keyword-only baseline fetched once per query (the count is the reliable
signal; the displayed text is not) and reports locationApplied: false
with zero rows rather than quietly returning worldwide results labelled
as location-filtered.
Input
| Field | Notes |
|---|---|
keyword | Required. Free-text job title/skill search |
location | Optional. City or country name |
queries | Optional array to run several searches in one call |
includeJobDetails | One extra request per listing, for the full description |
maxItems | Per query |
minRequestInterval | Defaults to 1s; raise to 10s to match robots.txt's stated crawl delay |
Example
{"keyword": "quant trader","location": "singapore","includeJobDetails": true,"maxItems": 100}
Known limits
- No unfiltered "browse all jobs" mode is offered —
keywordis required. - Salary is frequently "Competitive" rather than a figure; that is what upstream displays, passed through as-is.
- A small, constant set of sponsored listings (~5 of every 20) repeats across every page of a large result set — deduplicated automatically, so it never produces duplicate rows.
Anti-bot
Mostly none — seven TLS fingerprints tested locally on both search and detail
pages returned clean data every time — but an occasional shared
block/maintenance page from eFinancialCareers' corporate parent (DHI Group)
does appear on some cloud requests. The Actor detects it by content (not just
status code, since it can arrive as a plain HTTP 200) and automatically
rotates fingerprint and exit IP to recover, which succeeded in verification.
Defaults to residential proxy, since cloud egress is fingerprinted
differently from a local test. robots.txt's /search path is never used by
this Actor — it works entirely through the unrestricted /jobs/{keyword}
surface.