CWJobs Scraper: UK Tech Jobs, Salaries & Geo avatar

CWJobs Scraper: UK Tech Jobs, Salaries & Geo

Pricing

from $0.89 / 1,000 jobs

Go to Apify Store
CWJobs Scraper: UK Tech Jobs, Salaries & Geo

CWJobs Scraper: UK Tech Jobs, Salaries & Geo

Scrape every UK tech / IT job on cwjobs.co.uk. Extract titles, employers with logos, full JobPosting JSON-LD, parsed salary bands (min/max/period), geo-coords (lat/lng), industries, and posting dates. Auto-paginate listings or paste direct detail URLs. $1.50 per 1,000 jobs.

Pricing

from $0.89 / 1,000 jobs

Rating

0.0

(0)

Developer

GetAScraper

GetAScraper

Maintained by Community

Actor stats

1

Bookmarked

7

Total users

2

Monthly active users

2.9 hours

Issues response

2 minutes ago

Last modified

Share

πŸ’Ό CWJobs Scraper: UK tech jobs, salaries & employers

UK JOBS DATA SUITE
Choose focused job data for UK tech, Scotland, or the Highlands and Islands.
πŸ’Ό CWJobs Scraper
➀ You are here
🏴 S1 Jobs Scraper
Scotland jobs and salaries
πŸ”οΈ HIJOBS Scraper
Highlands and Islands jobs
Turn current CWJobs vacancies into a clean UK tech hiring dataset
Collect job titles, employers, locations, salary ranges, contract types, posting dates, and full descriptions in one run.
πŸ”Ž Focused searches
Target skills, cities, remote work, and contract types.
πŸ’· Salary context
Compare published pay ranges across roles and locations.
🏒 Employer signals
See which companies are hiring and where demand is growing.
🎯 Exact run limits
Control the maximum unique jobs saved across the whole run.

CWJobs Scraper collects current public UK technology vacancies from cwjobs.co.uk. Use it for recruitment research, salary benchmarking, job feeds, and employer hiring analysis.

πŸ” What can you collect?

  • Job title, direct source link, posting date, and closing date when published.
  • Employer name, profile link, and logo when available.
  • Location, region, postcode, and published map coordinates.
  • Salary minimum, maximum, currency, period, and original salary text.
  • Employment type, industry, remote status, and application route.
  • Full job description when you choose the optional detail-page mode.

Missing optional values are left empty. The Actor does not invent employer, salary, or location data.

🎯 Who uses this data?

  • I am a recruiter tracking new UK data, software, cloud, and security roles by city and contract type.
  • I am a salary analyst comparing published pay ranges across skills, employers, and regions.
  • I am a job-data product manager adding current UK technology vacancies to an existing feed.
  • I am a market-intelligence analyst following employer hiring activity as an early business signal.

πŸš€ How to use it

STEP 1
Choose your search
Enter keywords and locations, or paste CWJobs links.
STEP 2
Set the scope
Filter by contract, remote status, posting age, and result limit.
STEP 3
Use the results
Open the matching output dataset, export the data, or schedule another run.

The cost-efficient Cheap listing cards mode is selected by default. It collects the useful search-card fields without opening every vacancy page. Choose Full job details when you need descriptions and structured detail fields; that mode makes one additional page request per saved vacancy and therefore costs more.

The maxItems setting applies to the entire run. The Actor continues through unsuitable or duplicate pages until it reaches the limit or exhausts the available listings.

πŸ“‹ Input

FieldTypeRequiredDescription
startUrlsarray of URLsNoPaste CWJobs search or job links when you want to use an exact source page. These links take priority over guided search fields.
keywordsarray of stringsNoAdd job titles, skills, or categories such as data-engineer, devops, or cyber-security. Leave empty for a wider search.
locationsarray of stringsNoAdd UK cities or regions such as london, manchester, or edinburgh. Leave empty to avoid a location filter.
scrapeModeenumNoUse listings for the lower-cost search-card feed (default), or full_details to open each vacancy page for enriched fields.
contractTypeenumNoChoose all jobs, permanent, contract, temporary, or part-time roles.
remoteOnlybooleanNoReturn remote roles only. Leave locations empty when this option is enabled.
includeDescriptionbooleanNoInclude the full published job description. Turn it off when a shorter employer and vacancy record is enough.
dateWithinDaysintegerNoReturn jobs posted within the selected number of days. Use 0 to keep all available posting dates.
maxItemsintegerNoSet the maximum number of unique jobs saved across every search and direct job link in the run.
maxConcurrencyintegerNoControl how many job pages are processed at the same time. The supplied setting is suitable for most runs.
maxRequestRetriesintegerNoControl how many times a temporarily unavailable page is tried again.
proxyConfigurationobjectNoKeep the supplied UK residential connection for the most reliable results.

πŸ“€ Output example

Each saved item represents one genuine CWJobs vacancy.

{
"rowType": "job",
"listingUrl": "https://www.cwjobs.co.uk/jobs/data-engineer/in-london/contract",
"jobId": "107812345",
"jobUrl": "https://www.cwjobs.co.uk/job/data-engineer/example-employer-job107812345",
"title": "Data Engineer",
"datePosted": "2026-08-03",
"employmentType": "CONTRACTOR",
"industry": "Information Technology",
"employer": {
"name": "Example Employer Ltd"
},
"location": {
"text": "London",
"country": "GB"
},
"salary": {
"rawText": "Β£500 to Β£600 per day",
"min": 500,
"max": 600,
"currency": "GBP",
"period": "day"
},
"scrapedAt": "2026-08-04T13:27:00.000Z"
}

πŸ“Š Data table

FieldTypeDescription
rowTypestringIdentifies the item as a job record.
listingUrlstringSearch page where the vacancy was found.
jobIdstringStable CWJobs vacancy identifier.
jobUrlstringDirect link to the public vacancy.
titlestringPublished job title.
descriptionstringFull published description when requested and available.
datePostedstringPublished posting date.
validThroughstringClosing date when the source provides one.
employmentTypestringPublished employment type, such as FULL_TIME or CONTRACTOR.
industrystringPublished industry classification.
directApplybooleanIndicates whether the vacancy supports direct application.
jobLocationTypestringPublished remote or location arrangement when available.
applicantLocationRequirementsarrayPublished location requirements for remote applicants.
employerobjectEmployer name, profile link, and logo when available.
locationobjectPublished address and map details.
salaryobjectOriginal and normalized salary details.
applyTypestringIndicates whether the application stays on CWJobs or continues elsewhere.
scrapedAtstringTime when the job was saved.

πŸ—‚οΈ Output datasets

  • All saved CWJobs rows: The canonical paid dataset for the run. It contains every saved listing-card or enriched job-detail row.
  • Listing cards: Card-level rows from Cheap listing cards mode only; no job-detail page was requested for these vacancies.
  • Enriched job details: Full JobPosting rows from Full job details mode only, with recruitment-lead and compensation perspectives.

The focused datasets mirror accepted canonical rows after they are saved, so they do not add paid results or charges.

πŸ’° Pricing

Pricing is pay per saved job, with a small run-start charge. You are not charged for pages that are filtered out or fail to produce a saved result. Listing mode is the lower-cost choice; full-detail mode uses an additional vacancy-page request for each saved job. There is no fixed subscription.

⭐ Enjoying CWJobs Scraper?

⭐ ⭐ ⭐ ⭐ ⭐
Spend less time collecting vacancies and more time using UK tech hiring data.
A rating takes a few seconds and helps recruiters, analysts, and job-data teams find this Actor. Your feedback also guides future improvements.
β˜…Β Β Rate this Actor on Apify

❓ FAQ

Can maxItems return exactly the number I request?

Yes, when enough matching vacancies are available. Duplicate, outdated, or mismatched jobs do not consume the limit. The run continues until it saves the requested number or exhausts the available listings.

Can I collect contract or remote jobs only?

Yes. Choose the relevant contract type or enable remote-only search. Each saved row keeps the employment type published by CWJobs.

How fresh is the CWJobs data?

Each run reads the public vacancies available at that time. Use the posting-age filter and Apify schedules for recurring searches.

What happens when a page is unavailable or lacks optional details?

Temporarily unavailable pages are tried again. Jobs with a genuine ID and title can still be saved when optional fields are missing. Missing values are never fabricated.

πŸ›Ÿ Support and responsible use

This Actor collects public job-posting data and is not affiliated with CWJobs or the StepStone Group. Follow applicable terms, privacy rules, and local laws when using the results.

If a run does not match your search, open the Issues tab and share the run link. This makes it easier to reproduce the problem without exposing your dataset publicly.

πŸ”— Other actors