Freelancer Scraper avatar

Freelancer Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Freelancer Scraper

Freelancer Scraper

Scrape Freelancer project pages from direct URLs, Freelancer search queries, or job category URLs. Extract project title, budget or hourly rate, bid counts, days left, skills, and project descriptions.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(16)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

16

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

Scrape Freelancer.com project pages from direct URLs, search queries, category browse, or user profiles.

Modes

This actor supports four input modes — combine them freely:

  1. Project URLs — paste direct project URLs into projectUrls.
  2. Search queries — keywords (e.g. python, react native, data entry) listed in searchQueries.
  3. Category URLs — paste a category-listing URL (e.g. https://www.freelancer.com/jobs/python/) into categoryUrls.
  4. User profiles — paste an employer/freelancer profile URL (e.g. https://www.freelancer.com/u/username) into userUrls to scrape projects posted by that user.

Filters & sorting

FieldTypeDescription
projectTypeenumany, fixed, hourly — restrict to fixed-price or hourly projects.
sortByenumlatest, lowest_budget, highest_budget, lowest_bids, highest_bids.
minBidCountinteger (0-1000)Drop projects with fewer than N bids.
searchPagesinteger (1-10)Pages to crawl per search/category/user URL.
maxItemsinteger (1-500)Hard cap on emitted records.

Anti-bot

FieldDefaultDescription
useProxyfalseRoute HTTP requests through Apify proxy. Freelancer.com is normally reachable without it.
autoEscalateOnBlocktrueAutomatically retry blocked fetches via residential Apify proxy.
proxyConfiguration{}Apify proxy configuration (advanced; only used when useProxy is on).

Output

Each record can include:

  • title / pageTitle / slug
  • projectId / status
  • budget (raw display string, e.g. "$250-750 USD") / budgetMinMax ({"min": 250, "max": 750, "currency": "USD"})
  • hourlyRate (raw display string, e.g. "$15-30 USD / hr") / hourlyRateMinMax ({"min": 15, "max": 30, "currency": "USD"})
  • paymentType / averageBid (numeric — int when the source is whole, float otherwise)
  • bidCount / daysLeft / postedText
  • description
  • skills
  • marketplaceRating / marketplaceReviewCount / marketplaceDescription
  • sourceUrl / canonicalUrl
  • recordType / scrapedAt

Empty values are omitted from output.

Use cases

  • Monitor public freelance demand by skill or budget tier.
  • Track sort-rank movements for budget-sensitive projects.
  • Build project-intelligence datasets keyed by employer (via user URLs).
  • Research freelance marketplace trends across project types.

Notes

  • This actor is HTTP-first (no browser).
  • Empty values are omitted from output (no null, blank strings, or empty arrays).

FAQ

Q: Why does sortBy=highest_budget mix projects with different currencies?

Freelancer's listing endpoint sorts by raw numeric budget upstream — it does not convert to a common currency. As a result a ₹1,000,000 INR project can rank above a $5,000 USD project even though USD-equivalent the USD job is larger. This actor returns results in the raw upstream order; USD-equivalent ranking is not applied client-side. For strict price comparison, restrict to a single currency by appending currency=USD (or another ISO code) to the source Freelancer search URL, then pass that URL via categoryUrls.

Q: How do I sort or filter on numeric budget locally?

Use the new budgetMinMax / hourlyRateMinMax companion fields — both contain numeric min, max, and currency (e.g. {"min": 250, "max": 750, "currency": "USD"}). The string budget / hourlyRate fields are kept verbatim for display.