Learn4Good Jobs Scraper
Pricing
from $10.00 / 1,000 results
Learn4Good Jobs Scraper
[π° $10.00 / 1K] Extract job listings from Learn4Good. Search by keyword and location, paste Learn4Good URLs directly, or filter by job type and posting date. Get structured jobs with titles, companies, locations, salaries, types, posting dates, and full descriptions β one clean row per posting.
Pricing
from $10.00 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Pull job listings from Learn4Good at scale β titles, hiring companies, locations, parsed salaries, employment types, posting dates, expiry dates, and full job descriptions in clean, structured rows. Search across 30 job categories worldwide, filter by employment type and posting date, or paste any Learn4Good URL straight in. Built for recruiters, job-market researchers, and job-board aggregators who need fresh, structured Learn4Good postings without copying listings off the site one page at a time.
Why This Scraper?
- 30 job categories, worldwide β nursing, software development, teaching, sales, engineering, hospitality, skilled trades, and more; any keyword you type is matched to the closest Learn4Good category automatically.
- Six employment-type filters β Full-time, Part-time, Contract, Internship, Temporary, and Volunteer, applied per run.
- Four posting-date windows β last 24 hours, 3 days, 7 days, or 30 days, so you only collect listings that are still fresh.
- Parsed salary fields, not just text β every listing returns
salaryMin,salaryMax, andsalaryCurrency(USD, EUR, GBP, and more) alongside the raw salary string, ready for sorting and analysis. - Both plain-text and HTML descriptions β
descriptionTextfor analytics anddescriptionHtmlfor rich display, captured from each job's own page. - Batch up to 50 keywords per run β every keyword runs its own search, so a single run can sweep "nurse", "teacher", and "warehouse" at once instead of one keyword per run.
- Paste any Learn4Good URL directly β already dialed in a search on the site? Drop the search-result or individual job URL in and every filter baked into that link is preserved.
- 3Γ faster runs on demand β flip off full-description fetching when you only need title, company, location, salary, and posting date.
- Clean cross-page deduplication β jobs that repeat across result pages are removed by job ID, so every row is unique.
Use Cases
Recruiting & Talent Sourcing
- Build candidate-facing job boards seeded with live Learn4Good roles
- Track open positions by category in your target markets
- Surface fresh postings from the last 24 hours for fast outreach
- Compare role volume across nursing, IT, education, and the trades
Job-Market Research
- Measure hiring demand by category, location, and employment type
- Track salary ranges across roles using parsed min/max fields
- Monitor seasonal swings in Temporary and Volunteer postings
- Benchmark posting volume week over week with the posting-date windows
Job-Board Aggregation
- Feed a multi-source aggregator with structured Learn4Good listings
- De-duplicate and normalize postings into your own schema
- Keep listings current with scheduled runs and posting-date filters
- Pull full HTML descriptions for rich listing pages
Lead Generation
- Identify companies actively hiring in a category or region
- Build outreach lists of hiring organizations from the
companyfield - Spot firms expanding via internships and contract roles
- Target staffing leads by employment type and location
Data Enrichment & Integration
- Enrich an existing jobs dataset with Learn4Good salary and date fields
- Power dashboards tracking hiring trends over time
- Feed downstream models plain-text descriptions at scale
- Sync new postings into a CRM or spreadsheet automatically
Getting Started
Search by Keyword
The simplest run β one keyword, everywhere:
{"searchQueries": ["nurse"]}
Keyword + Location + Filters
Narrow to a country, a single employment type, and recent postings only:
{"searchQueries": ["software developer", "teacher"],"location": "United States","jobType": "full-time","postedWithinDays": "7","maxResultsPerQuery": 200}
Paste Learn4Good URLs Directly
Already have a search dialed in on the site? Scrape those exact pages:
{"startUrls": ["https://www.learn4good.com/jobs/language/english/search/nursing/","https://www.learn4good.com/jobs/online/usa/nursing/5193000000/e/"],"fetchDescription": true,"maxResultsPerQuery": 100}
Input Reference
What to Scrape
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | array | ["nurse"] | Job titles, roles, or keywords to search. Each keyword runs its own search and is matched to the closest Learn4Good category. Up to 50 per run. |
location | string | "" | City, state, or country to search in, such as "California" or "United States". Applies to every keyword. Leave empty to search everywhere. |
startUrls | array | [] | Paste full Learn4Good search-result or individual job URLs to scrape them directly. Any filters in the URL are kept. Up to 50 per run. |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
jobType | string | Any | Only return jobs of one employment type: Full-time, Part-time, Contract, Internship, Temporary, or Volunteer. |
postedWithinDays | string | Any | Only return jobs published within a window: last 24 hours, 3 days, 7 days, or 30 days. |
Limits & Options
| Parameter | Type | Default | Description |
|---|---|---|---|
maxResultsPerQuery | integer | 100 | Maximum jobs to collect per keyword or per URL. The whole final page is always kept, so a small cap can return up to a full page more than requested. A single search collects at most about 10,000 jobs as a safety limit, well above any Learn4Good category. |
fetchDescription | boolean | true | Fetch each job's full description (plain text and HTML) and extra detail from its own page. Turn off for roughly 3Γ faster runs; the description fields will be empty. |
Output
Each job posting becomes one flat row. Example:
{"jobId": "5193456789","title": "Registered Nurse - ICU","company": "Springfield General Hospital","location": "Boston, Massachusetts, United States","salary": "$75,000 - $95,000 per year","salaryMin": 75000,"salaryMax": 95000,"salaryCurrency": "USD","jobType": "full-time, part-time","datePosted": "2026-06-20","validThrough": "2026-08-19","descriptionText": "We are seeking an experienced ICU nurse to join our team...","descriptionHtml": "<p>We are seeking an experienced ICU nurse to join our team...</p>","url": "https://www.learn4good.com/jobs/boston/usa/nursing/5193456789/e/","searchKeyword": "nurse","searchLocation": "United States","source": "learn4good.com","scrapedAt": "2026-06-26T14:32:08.512000+00:00"}
Core Job Fields
| Field | Type | Description |
|---|---|---|
jobId | string | Stable Learn4Good job identifier, used as the cross-page deduplication key. |
title | string | Job position title. |
company | string | Hiring organization. |
location | string | Job location text. |
jobType | string | Employment type(s) for the listing (Full-time, Part-time, Contract, Internship, Temporary, Volunteer). May contain multiple comma-separated types, e.g. "full-time, part-time". |
url | string | Direct link to the job's detail page. |
Salary & Dates
| Field | Type | Description |
|---|---|---|
salary | string | Raw salary text as shown on the listing, when present. |
salaryMin | number | Parsed salary floor, when derivable. |
salaryMax | number | Parsed salary ceiling, when derivable. |
salaryCurrency | string | Parsed currency code (USD, EUR, GBP, and more), when derivable. |
datePosted | string | Publication date (ISO format when available). |
validThrough | string | Listing expiry date, when present. |
Description & Run Metadata
| Field | Type | Description |
|---|---|---|
descriptionText | string | Plain-text job description (populated when full descriptions are fetched). |
descriptionHtml | string | HTML job description (populated when full descriptions are fetched). |
searchKeyword | string | The keyword that produced this row. |
searchLocation | string | The location filter applied to this run. |
source | string | Source site label ("learn4good.com"). |
scrapedAt | string | ISO timestamp of when the row was collected. |
Tips for Best Results
- Keywords map to job categories β Learn4Good organizes jobs into a fixed set of 30 categories, so a niche term may be matched to a broader one (for example "frontend" maps to software development). If a precise term returns nothing, paste a category or search URL into
startUrlsfor exact control. - Use a country for
locationβ country-level locations like "United States", "United Kingdom", or "Canada" give the most reliable results; for city-level targeting, dial the search in on Learn4Good and paste the URL intostartUrls. - Pair filters with a focused keyword β job-type and posting-date filters scan listings as they come in, so combining them with a specific keyword returns matches faster than running them on a broad category. With a filter active, a search stops early once several pages in a row contain no matching jobs, so pick the most focused keyword for the best coverage.
- Keep
fetchDescriptionon when filtering by date or type β those filters rely on detail-page data, so full pages are fetched automatically when either is set; leave the toggle on for the most complete rows. - Turn off
fetchDescriptionfor quick scans β when you only need title, company, location, salary, and posting date, switching it off makes runs about 3Γ faster. - Batch related keywords in one run β add several roles to
searchQueries(up to 50) to sweep a whole sector in a single run; each gets its own search and results are deduplicated by job ID. - Set
maxResultsPerQueryto control volume β the whole final page is always kept, so the final count can land slightly above the cap on a small limit and slightly below it after duplicates are removed.
Pricing
From $10.00 per 1,000 results β competitively priced for clean, structured Learn4Good job data with parsed salaries and full descriptions. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $1.20 | $1.13 | $1.07 | $1.00 |
| 1,000 | $12.00 | $11.30 | $10.65 | $10.00 |
| 10,000 | $120.00 | $113.00 | $106.50 | $100.00 |
| 100,000 | $1,200.00 | $1,130.00 | $1,065.00 | $1,000.00 |
A result is one job posting row in your dataset. No compute or time-based charges β you pay per result, plus a small fixed per-run start fee.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Zapier / Make / n8n β Workflow automation
- Google Sheets β Direct spreadsheet export
- Slack / Email β Notifications on new results
- Webhooks β Trigger custom APIs on run completion
- Apify API β Full programmatic access
Legal & Ethical Use
This scraper collects publicly available job-listing data from Learn4Good. Use it responsibly and in compliance with Learn4Good's terms of service and all applicable laws and regulations. Do not use collected data to send unsolicited communications or for any purpose that infringes on privacy or other rights. You are responsible for how you use the data you collect, including any handling of personal information under regulations such as GDPR and CCPA.