Barnsley CVS Jobs Scraper avatar

Barnsley CVS Jobs Scraper

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Barnsley CVS Jobs Scraper

Barnsley CVS Jobs Scraper

Scrape the barnsleycvs.org.uk Webflow job board for Barnsley voluntary-sector vacancies. Title, employer, parsed salary, closing date from the listing; full HTML description per job via optional detail enrichment. ~5-10 live vacancies. JSON or CSV out.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Categories

Share

Scrape the barnsleycvs.org.uk Webflow-hosted job board. The /jobs listing renders every vacancy server-side with title, employer, salary (parsed), and closing date. Optional detail enrichment fetches each /job-positions/<slug> page for the full HTML description. JSON or CSV out, no compute charge per run, just per result.

How it works

How Barnsley CVS Scraper works

✨ Why use this scraper?

Barnsley CVS hosts the town's voluntary-sector jobs board for member charities — children's services, fundraising, project work, finance, community engagement. Tracking Barnsley nonprofit hiring? Building a regional South Yorkshire dashboard? Looking for partner orgs by employer?

  • 🎯 Two starting points. The /jobs listing URL (default) or any direct /job-positions/<slug> URL (filters the listing).
  • Single HTTP call for the listing. Webflow renders every CMS Collection item server-side — title, employer, salary, closing date all inline.
  • 📋 Detail-page enrichment. Optional one-fetch-per-job to extract the full HTML description from /job-positions/<slug>.
  • 💰 Salary parsed. "£26,403 - £28,142 per annum" → structured {currency, min, max, raw}.
  • 📅 Closing date inline. Card's "Deadline: …" line captured.
  • 🏙️ Barnsley focus. Member charities — GROW, Roundabout Ltd, Barnsley CVS itself, Rotherham Federation of Communities Ltd, and more.
  • 📤 Clean exports. One row per vacancy with optional full HTML description. JSON + CSV exported automatically.

🎯 Use cases

TeamWhat they build
Barnsley CVS membersCross-charity recruitment intelligence in their own borough
South Yorkshire CVS networkAggregate with VA Rotherham + Sheffield for regional dashboards
FundersSalary intelligence across small Barnsley charities
Sector recruitersDaily new-vacancy feeds
Volunteer co-ordinatorsTrack partner orgs hiring for paid roles

📥 Supported inputs

URL patternBehaviour
https://barnsleycvs.org.uk/jobsFull listing (default)
https://barnsleycvs.org.uk/job-positions/<slug>Single job — fetches the listing and filters to that slug

Leave startUrls empty for the full listing.

Not supported: hosts outside barnsleycvs.org.uk.

🔄 How it works

  1. Fetch the /jobs listing once (Webflow SSR HTML).
  2. Find every .collection-item-job-position block using cheerio.
  3. For each card, extract:
    • .job-position-name → title + slug
    • Three .info-job-wrappr blocks in order: employer, deadline, salary
  4. For each card (when enrichDetail: true), fetch /job-positions/<slug> for the full HTML description.
  5. Push one normalised row per vacancy to the dataset.

⚙️ Input parameters

ParameterTypeDefaultDescription
startUrlsarray["https://barnsleycvs.org.uk/jobs"]Listing URL or single-job URLs (slug filter).
enrichDetailbooleantrueWhen true, fetches each /job-positions/<slug> page for the full HTML description. Disable to skip — listing alone gives title, employer, salary, closing date.
maxItemsinteger1000Hard cap on rows pushed (typically 5-10 live).
maxConcurrencyinteger3Parallel detail-page fetch limit.
maxRequestRetriesinteger5Retries before a failed request is given up.
proxyobjectNo proxyWebflow CDN does not anti-bot.

📊 Output overview

Each scraped vacancy is one single dataset row of type: "job". Listing fields merged with optional detail-page HTML description.

📦 Output sample

{
"type": "job",
"source": "barnsleycvs.org.uk",
"jobId": "project-worker",
"slug": "project-worker",
"jobUrl": "https://barnsleycvs.org.uk/job-positions/project-worker",
"title": "Project Worker",
"description": "<div>Project Worker role at GROW supporting young people in Barnsley…</div>",
"descriptionText": "Project Worker role at GROW supporting young people in Barnsley…",
"companyName": "GROW",
"companyWebsite": null,
"companyDomain": null,
"location": "Barnsley, South Yorkshire",
"remote": false,
"salary": {
"currency": "GBP",
"min": 26403,
"max": 28142,
"raw": "£26,403 - £28,142 per annum"
},
"salaryRaw": "£26,403 - £28,142 per annum",
"categories": [],
"employmentTypes": [],
"contractType": null,
"status": "publish",
"postedDate": null,
"closingDate": "10 am 18th May 2026",
"modifiedDate": null,
"applyType": "internal",
"applyUrl": "https://barnsleycvs.org.uk/job-positions/project-worker",
"applyEmail": null,
"externalApplyUrl": null,
"scrapedAt": "2026-05-20T00:13:00.000Z"
}

🗂 Key output fields

GroupFields
Identifierstype, source, jobId, slug, jobUrl, scrapedAt
Contenttitle (from .job-position-name), description (HTML, from detail page when enrichDetail: true), descriptionText (plain)
DatesclosingDate (from card "Deadline:" field)
EmployercompanyName (from first .info-job-wrappr)
Locationlocation (always Barnsley, South Yorkshire)
Compensationsalary.{currency, min, max, raw}, salaryRaw
Apply flowapplyType, applyUrl (the BCVS page)

❓ FAQ

Why is applyType always "internal"? Barnsley CVS cards don't surface an mailto: or outbound URL — the "Learn more" button goes to their own /job-positions/<slug> page where the applicant follows the charity's own instructions. The actor preserves the BCVS URL in applyUrl.

Why are some closing dates verbose ("10 am 18th May 2026")? The deadline value comes verbatim from the Webflow CMS — charities format it freely. We don't normalise to ISO because the format varies.

Why is location always "Barnsley, South Yorkshire"? Barnsley CVS doesn't tag location per job — every member is in the borough. Set as a constant for downstream geocoding consistency.

Can I scrape private pages or applicant data? No. Only the public /jobs listing and public /job-positions/<slug> pages.

How do I limit results? Set maxItems. With only 5-10 live vacancies, maxItems: 100 covers everything.

💬 Support

🛠 Additional services

  • Custom output shape, additional fields, or one-off datasets: muhamed.didovic@gmail.com
  • Similar scrapers for other CVS / volunteer hubs (VA Rotherham, Doing Good Leeds, VAS Sheffield, York CVS): drop an email.
  • For API access (no Apify fee, just usage): muhamed.didovic@gmail.com

🔎 Explore more scrapers

See other scrapers at memo23's Apify profile — covering job boards, real estate, social media, and more.


⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Barnsley CVS, barnsleycvs.org.uk, Webflow Inc., or any of their subsidiaries or affiliates. All trademarks mentioned are the property of their respective owners.

The scraper accesses only the publicly available /jobs listing page and public /job-positions/<slug> pages on barnsleycvs.org.uk — no authenticated endpoints, recruiter-only features, or content behind a login. Users are responsible for ensuring their use complies with barnsleycvs.org.uk's Terms of Service, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organisation.


SEO Keywords

barnsley cvs scraper, scrape barnsleycvs.org.uk, barnsley cvs jobs api, barnsley voluntary sector jobs scraper, barnsley charity jobs scraper, south yorkshire charity recruitment data, Apify barnsley cvs, barnsley nonprofit jobs api, barnsley third sector jobs scraper, barnsley community sector jobs, webflow cms scraper, webflow collection scraper, charityjob alternative scraper, va rotherham alternative scraper, vassheffield alternative scraper, doing good leeds alternative scraper, uk cvs jobs scraper, south yorkshire voluntary sector recruitment data, barnsley hiring trends data