VOOZH about

URL: https://apify.com/hidayat-ethum/upwork-scrapper-v2

⇱ Upwork Scrapper V2 Β· Apify


Pricing

Pay per usage

Go to Apify Store

Upwork Scrapper V2

scrap data

Pricing

Pay per usage

Rating

0.0

(0)

Developer

πŸ‘ Hidayat

Hidayat

Maintained by Community

Actor stats

5

Bookmarked

88

Total users

0

Monthly active users

9 months ago

Last modified

Share

Upwork Job Scraper

This Apify Actor scrapes job listings from Upwork based on a wide range of search criteria. It automates the login process, bypasses anti-bot measures, and extracts detailed information for each job into a structured format.

Features

  • Advanced Search: Filter jobs by keywords, job type, budget, client history, expertise level, and more.
  • Secure Login: Handles Upwork authentication securely.
  • Captcha Solving: Integrates captcha solving to handle Cloudflare challenges.
  • Detailed Data Extraction: Scrapes over 50 data points for each job, including client information, job requirements, budget, and skills.
  • Flexible Input: Configure the scraper using a simple JSON input.
  • Structured Output: Provides results in a clean, machine-readable format (JSON).

Input Schema

The actor is configured using a JSON object with the following properties.

Credentials (Required)

You must provide your Upwork login credentials.

{
"credentials":{
"username":"YOUR_UPWORK_EMAIL",
"password":"YOUR_UPWORK_PASSWORD"
}
}

Search Parameters

Define your job search criteria within the search object. All fields below are supported:

{
"search":{
"query":"Workflow Automation",
"search_any":"make.com n8n tines Zapier",
"search_exact":"",
"search_none":"",
"search_title":"",
"category":["Web, Mobile & Software Dev","civil & structural engineering"],
"projectDuration":["week","month","semester","ongoing"],
"fixed":true,
"hires_min":1,
"hires_max":10,
"hourly":true,
"hourly_max":70,
"hourly_min":10,
"limit":70,
"payment_verified":true,
"contract_to_hire":false,
"previous_clients":false,
"fixed_price_catagory_num":["3"],
"fixed_max":100,
"fixed_min":30,
"proposal_min":0,
"proposal_max":0,
"sort":"relevance",
"expertise_level_number":["1","2","3"],
"workload":[]
}
}

All Search Fields

  • query (string): The primary keyword for the search (e.g., "web developer").
  • search_any (string): Space-separated words; jobs must contain at least one (e.g., "make.com n8n zapier").
  • search_exact (string): The exact phrase the job must contain.
  • search_none (string): Space-separated words to exclude from the search.
  • search_title (string): Words that must appear in the job title.
  • category (array of strings): List of job categories to include.
  • projectDuration (array of strings): List of durations. Options: week, month, semester, ongoing.
  • fixed (boolean): Include fixed-price jobs.
  • hires_min (integer): Minimum number of client hires.
  • hires_max (integer): Maximum number of client hires.
  • hourly (boolean): Include hourly jobs.
  • hourly_max (integer): Maximum hourly rate.
  • hourly_min (integer): Minimum hourly rate.
  • limit (integer): The maximum number of jobs to scrape.
  • payment_verified (boolean): Only jobs from clients with verified payment.
  • contract_to_hire (boolean): Only contract-to-hire jobs.
  • previous_clients (boolean): Only jobs from your previous clients.
  • fixed_price_catagory_num (array of strings): Pre-defined budget ranges. "1" ($0-99), "2" ($100-499), "3" ($500-999), "4" ($1k-5k), "5" ($5k+).
  • fixed_max (integer): Maximum fixed price budget.
  • fixed_min (integer): Minimum fixed price budget.
  • proposal_min (integer): Minimum number of proposals.
  • proposal_max (integer): Maximum number of proposals.
  • sort (string): The order to sort results. Options: relevance, newest, client_total_charge, client_rating.
  • expertise_level_number (array of strings): List of expertise levels. "1" (Entry), "2" (Intermediate), "3" (Expert).
  • workload (array of strings): List of workload preferences. Options: part_time, full_time.

Output

The actor returns a dataset where each item represents a scraped job.

Example Job Output Item

{
"job_id":"01abcdef1234567890",
"url":"https://www.upwork.com/jobs/~01abcdef1234567890",
"title":"Build a simple web scraper for product data",
"description":"We need a script that can scrape product names, prices, and availability from an e-commerce website...",
"type":"Fixed-price",
"level":"INTERMEDIATE",
"fixed_budget_amount":500,
"hourly_min":0,
"hourly_max":0,
"duration":"Less than a month",
"skills":["Web Scraping","Python","Beautiful Soup"],
"applicants":"10",
"connects_required":6,
"payment_verified":true,
"phone_verified":true,
"client_country":"United States",
"buyer_location_city":"New York",
"buyer_location_localTime":"10:30 am",
"client_total_spent":2500,
"client_hires":5,
"client_rating":4.95,
"client_reviews":"12 reviews",
"ts_publish":"2023-10-27T10:00:00.000Z"
}

Output Fields

The actor extracts the following fields for each job, when available:

  • Job Details: job_id, url, title, description, type (Hourly/Fixed-price), level, duration, hourly_commitment, skills, qualifications, questions, category_name, isContractToHire, premium, enterpriseJob.
  • Budget: fixed_budget_amount, hourly_min, hourly_max, currency.
  • Timestamps: ts_create, ts_publish.
  • Job Activity: applicants, clientActivity_invitationsSent, clientActivity_unansweredInvites, clientActivity_totalInvitedToInterview, lastBuyerActivity.
  • Client Info: payment_verified, phone_verified, client_country, buyer_location_city, buyer_location_localTime, client_industry, client_company_size, client_member_since, client_hours_worked, client_active_status.
  • Client Stats: client_total_spent, client_hires, client_rating, client_reviews, buyer_jobs_postedCount, buyer_jobs_openCount, buyer_avgHourlyJobsRate_amount, buyer_stats_hoursCount.
  • Contract Details: contract_to_hire_details (detailed description of contract-to-hire opportunities).

Usage

  1. Navigate to the Actor page on the Apify platform.
  2. Click "Try actor".
  3. Enter your input configuration in the JSON editor. At a minimum, provide your credentials.
  4. Click "Start" to run the actor.
  5. Once the run is complete, view and download the results from the "Dataset" tab.

You might also like

Apple Maps Scraper

lexis-solutions/apple-maps-scraper

Extract location, business, and point-of-interest data from Apple Mapsβ€”addresses, coordinates, contact details, images, reviews, amenities, business hours, and more. Ideal for mapping apps, travel platforms, and market intelligence. Fast, reliable, and fully customizable.

πŸ‘ User avatar

Lexis Solutions

30

5.0

Free Google Maps Scraper - Low-cost & Extensive

blueorion/free-google-maps-scraper-extensive

Reliable Actor to Extract Google Maps data using Free Credit or $3 per 1000 results. Extensive Data Outputs include `addresses`, `coordinates`, `reviews`, `menus`, `opening hours`, `gas station info`, `EV charging station info`, `tours and activities`, `admission and tickets`, and `hotel deals`

195

4.9

Gsmarena Phones Scraper

fetchcraftlabs/gsmarena-phones-scraper

GSMArena scraper for smartphone specs, phone database extraction, and mobile device data collection. Scrape 5G phones, Android devices, Snapdragon models, AMOLED displays, battery capacity, camera specs, and release dates. Ideal for tech datasets, price comparison, and affiliate sites.

πŸ‘ User avatar

FetchCraft Labs

75

5.0

Extract Phone Numbers Contacts Socials From Any Website

scrapio/extract-phone-numbers-contacts-socials-from-any-website

πŸ“žπŸ” Extract phone numbers, emails, contact details & social media links from any website in seconds. ⚑️ Scrapes tel, mailto, WhatsApp, LinkedIn, X/Twitter, Instagram & more; dedupes & validates. πŸ“Š Export CSV/JSON, API-ready. πŸš€ Ideal for lead gen, sales & CRM enrichment.

Anyphone - Mobile Phone Numbers

andrewthecube/anyphone0-2

Find any mobile phone number that is or was public through a methodic scouring of the internet.

πŸ‘ User avatar

Andrew Koumoudjian

62

WhatsApp Message Export - Backup Chats & Media

clearpath/whatsapp-message-export-api

WhatsApp backup API: Export all messages and media to JSON. Download images, videos, documents from chats and groups. Easy QR code authentication. Filter by date range or chat type. Full metadata preserved even when media expires.

WhatsApp Number Lookup β€” Profile, Leaks, Telegram, Bulk

eduair94/whatsapp-data-lookup

Verify any WhatsApp number worldwide. Returns profile picture (real pics for normal users, not just businesses), about/status, business flag, Telegram cross-check, Google/TrueCaller intel, leak/breach data, and bulk verification. Covers gaps left by generic WA lookup actors.

πŸ‘ User avatar

Eduardo Airaudo

404

4.9

πŸ•΅οΈ WhatsApp Status Spy | Secretly Scrape Any Status

clearpath/whatsapp-status-scraper-api

View and download WhatsApp status updates from any contact without them knowing. No read receipts, no "seen" notification. Download photos, videos, and text statuses secretly. Scan QR once, then runs automatically. Perfect for checking on someone discreetly.

WhatsApp Number Validator - Bulk Check 10K per Run

clearpath/whatsapp-phone-number-validator-api

Check if phone numbers have WhatsApp. Validate up to 10,000 numbers per run from CSV, Excel, or direct input. Yes/no result per number. Clean contact lists before WhatsApp campaigns.