Work Scraper
by trudax
Extract data from the top freelancing websites such as Upwork. Search by URL or search terms, filter by categories, English level, and hourly rate. Ge...
Opens on Apify.com
About Work Scraper
Extract data from the top freelancing websites such as Upwork. Search by URL or search terms, filter by categories, English level, and hourly rate. Get info about freelancers and agencies without login. Download your data as an HTML table, JSON, CSV, Excel, or XML.
What does this actor do?
Work Scraper is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.
Key Features
- Cloud-based execution - no local setup required
- Scalable infrastructure for large-scale operations
- API access for integration with your applications
- Built-in proxy rotation and anti-blocking measures
- Scheduled runs and webhooks for automation
How to Use
- Click "Try This Actor" to open it on Apify
- Create a free Apify account if you don't have one
- Configure the input parameters as needed
- Run the actor and download your results
Documentation
What does Work Scraper do? Work Scraper enables you to extract data from the top freelancers websites. It allows you to extract info from freelancers, jobs and agencies without login. Here is a list of supported websites: - Upwork ## Why scrape Work? If you're a freelancer, you might use it to keep track of the competition or identify new opportunities. You can also automatically apply to the jobs by integrating with the this other actor actor and passing the applyUrl. Check the integration documentation for more details. If you're an employer, you could gather data on potential freelancers, find your competitors on the platform, or make sure that your projects are targeted so as to attract the best talent. ## How much will it cost to scrape? Work Scraper is efficient and cheap to run. It will only cost approx. $0.25 per 100 requests on top of the monthly rental fee. ## How to scrape You can fill the search inputs in the actor or, if you want a more complex search, you can copy the url generated by your search in the origin website and use it as a start url in the actor inputs. ## Example results The output of Work Scraper is stored in a dataset and will look something like this: Freelancer profile: json { "name": "John Dow", "location": "St. John's - Canada", "locality": "St. John's", "country": "Canada", "title": "Blockchain Developer", "description": "I believe highly in perfection in my work. I have written short articles, reviews, as well as blog posts for different companies using WordPress and have done website testing as well. I am a gifted technical writer and article spinner. I have also been a ghostwriter for multiple clients on a variety of both fiction and non-fiction writing. I also do data entry on a daily basis into Excel books and am responsible for payroll at my full time job. I have excellent communication skills and work as an administrative assistant on a full time basis. I understand the need for quality work and communication to get the job done right!", "jobSuccess": "100%", "hourlyRate": "100.00", "totalHours": "835", "totalJobs": "20", "stats": [ "20\nTotal Jobs", "835\nTotal Hours", "20 Total Jobs", "835 Total Hours", "20 Total Jobs", "835 Total Hours" ], "profileUrl": "https://www.website.com/freelancers/XXXXXX" } Job: json { "title": "Job title", "description": "Job description", "jobType": "Hourly: $45.00", "contractorTier": "Intermediate", "skills": "Database\nDatabase Maintenance\nWeb Service\nJava\nGit\nSQLite\nCSS\nWeb Development\nHTML", "createdAt": "15 minutes ago", "scrapedAt": "2022-08-16T13:50:20.995Z", "url": "https://www.website.com/freelance-jobs/apply/XXXX/", "applyUrl": "https://www.website.com/ab/proposals/job/XXXX/apply/#/" } ## Extend output function You can use this function to update the result output of this actor. You can choose what data from the page you want to scrape. The output from this will function will get merged with the result output. The return value of this function has to be an object! You can return fields to archive 3 different things: - Add a new field - Return object with a field that is not in the result output - Change a field - Return an existing field with a new value - Remove a field - Return an existing field with a value undefined js async () => { return { pageTitle: document.querySelector("title").innerText, }; }; This example will add the title of the page to the final object: json { "name": "John Dow", "location": "St. John's - Canada", "locality": "St. John's", "country": "Canada", "title": "Blockchain Developer", "description": "I believe highly in perfection in my work. I have written short articles, reviews, as well as blog posts for different companies using WordPress and have done website testing as well. I am a gifted technical writer and article spinner. I have also been a ghostwriter for multiple clients on a variety of both fiction and non-fiction writing. I also do data entry on a daily basis into Excel books and am responsible for payroll at my full time job. I have excellent communication skills and work as an administrative assistant on a full time basis. I understand the need for quality work and communication to get the job done right!", "jobSuccess": "100%", "hourlyRate": "100.00", "totalHours": "835", "totalJobs": "20", "stats": [ "20\nTotal Jobs", "835\nTotal Hours", "20 Total Jobs", "835 Total Hours", "20 Total Jobs", "835 Total Hours" ], "profileUrl": "https://www.website.com/freelancers/XXXXXX", "pageTitle": "John Doe - Fast, Friendly, Reliable!" } ## Personal data You should be aware that your results might contain personal data. Personal data is protected by GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers. You can also read our blog post on the legality of web scraping.
Categories
Common Use Cases
Market Research
Gather competitive intelligence and market data
Lead Generation
Extract contact information for sales outreach
Price Monitoring
Track competitor pricing and product changes
Content Aggregation
Collect and organize content from multiple sources
Ready to Get Started?
Try Work Scraper now on Apify. Free tier available with no credit card required.
Start Free TrialActor Information
- Developer
- trudax
- Pricing
- Paid
- Total Runs
- 22,202
- Active Users
- 761
Related Actors
Company Employees Scraper
by build_matrix
🔥 LinkedIn Jobs Scraper
by bebity
Linkedin Company Detail (No Cookies)
by apimaestro
Linkedin Profile Details Batch Scraper + EMAIL (No Cookies)
by apimaestro
Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.
Learn more about ApifyNeed Professional Help?
Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.
Trusted by millions | Money-back guarantee | 24/7 Support