This scraper takes direct Upwork job post URLs and extracts information such as job title, budget, description, and client data. It can optionally use a proxy server from a specified country. The results are provided in a structured JSON format for easy analysis or further processing.
This scraper takes individual Upwork job post URLs and extracts detailed information about each post (title, description, budget, etc.). It can optionally use a proxy with a specified country code to request the data.
The input is a JSON object that must contain at least one startUrls entry. It can also include an optional proxyCountryCode:
1{ 2 "startUrls": [ 3 { 4 "url": "https://www.upwork.com/freelance-jobs/apply/WIX-Website-Template-Development-for-Virtual-Staging-SaaS_~021883994784056195740" 5 } 6 ], 7 "proxyCountryCode": "FR" 8}
Field | Type | Required | Description | Default |
---|---|---|---|---|
startUrls | array | yes | An array of objects, each containing a url for a specific Upwork job post. | none |
proxyCountryCode | string | no | A two-letter country code to configure proxy usage. (e.g., US , FR ) or "LOCAL" to disable. | "FR" |
startUrls
: Each URL should be the direct link to an Upwork job post.proxyCountryCode
: Determines where the proxy server is located. If "LOCAL"
, no remote proxy is used.The scraper outputs an array of job detail objects. Each job object may contain:
Example output:
1[ 2 { 3 "title": "Looking for a Startup Hubspot Sales Ops and CRM Manager", 4 "paymentType": "Hourly", 5 "paymentAmount": "$65.00 - $110.00", 6 "description": "We’re seeking a skilled and proactive freelance ...", 7 "jobPosted": "3 days ago", 8 "lastViewedByClient": "yesterday", 9 "jobType": "Remote Job", 10 "projectType": "Complex project", 11 "estimatedHours": "Less than 30 hrs/week", 12 "duration": "3-6 months", 13 "experienceLevel": "Intermediate", 14 "clientLocation": "United States", 15 "clientTotalSpent": "$154K", 16 "clientTotalHires": "30", 17 "clientActiveHires": "9", 18 "clientHoursBilled": "8,297 hours", 19 "clientMemberSince": "Apr 20, 2022", 20 "proposals": "20 to 50", 21 "interviews": "7", 22 "invitesSent": "5", 23 "skills": [ 24 "HubSpot", 25 "Marketing Automation", 26 "Sales Operations", 27 "Sales" 28 ], 29 "locationRestriction": "Only freelancers located in the U.S. may apply.", 30 "contractToHire": true 31 } 32]
startUrls
(and optionally modify the proxyCountryCode
).Yes, if you're scraping publicly available data for personal or internal use. Always review Websute's Terms of Service before large-scale use or redistribution.
No. This is a no-code tool — just enter a job title, location, and run the scraper directly from your dashboard or Apify actor page.
It extracts job titles, companies, salaries (if available), descriptions, locations, and post dates. You can export all of it to Excel or JSON.
Yes, you can scrape multiple pages and refine by job title, location, keyword, or more depending on the input settings you use.
You can use the Try Now button on this page to go to the scraper. You’ll be guided to input a search term and get structured results. No setup needed!