BLS Occupational Outlook Handbook Scraper avatar

BLS Occupational Outlook Handbook Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
BLS Occupational Outlook Handbook Scraper

BLS Occupational Outlook Handbook Scraper

Scrape Bureau of Labor Statistics Occupational Outlook Handbook - wages, employment counts, job outlook, education requirements and career data for 300+ US occupations. No API key needed.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Extract detailed career and wage data for 300+ US occupations from the Bureau of Labor Statistics (BLS) Occupational Outlook Handbook (OOH). No API key required.

What This Actor Does

This actor scrapes the BLS OOH website to extract structured occupation data including:

  • Median annual and hourly wages
  • Employment counts and projections
  • 10-year job outlook and growth category
  • Education and training requirements
  • Typical job duties and work settings
  • Related occupations

Data Source

Bureau of Labor Statistics — Occupational Outlook Handbook
Website: https://www.bls.gov/ooh/
No API key or registration required. The data is published by the U.S. Department of Labor.

Use Cases

  • Career research — Compare wages and outlook across occupation groups
  • Workforce analytics — Analyze labor market trends and projected job growth
  • Education planning — Map education requirements to occupations
  • Salary benchmarking — Compare median wages by occupation and group
  • Job market intelligence — Identify growing vs. declining occupations

Input Parameters

ParameterTypeDescription
modeSelectHow to fetch: allOccupations, byOccupationGroup, searchByKeyword, byOccupation
occupationGroupSelectOne of 23 BLS occupation groups (used with byOccupationGroup)
keywordStringKeyword to search in occupation names (used with searchByKeyword)
occupationUrlStringFull URL or relative path to a specific occupation page
minMedianWageIntegerMinimum median annual wage (USD) filter
maxItemsIntegerMaximum records to return (default: 50, max: 1000)

Output Fields

FieldTypeDescription
occupation_titleStringOccupation name
occupation_groupStringMajor occupation group
median_annual_wage_usdIntegerMedian annual wage in USD
median_hourly_wage_usdNumberMedian hourly wage in USD
employment_countIntegerNumber of jobs in the reference year
employment_percent_change_10yrNumberProjected % change in employment over 10 years
job_outlook_categoryStringGrowth category (e.g., "Faster than average")
entry_level_educationStringTypical education to enter the occupation
work_experienceStringWork experience requirement
on_the_job_trainingStringOn-the-job training requirement
number_of_jobsIntegerTotal number of jobs
projected_employment_changeIntegerProjected new jobs over 10 years
occupation_codeStringSOC code
summaryStringBrief occupation description
typical_dutiesArrayList of common job duties
work_settingsArrayList of common work environments
related_occupationsArrayList of similar occupations
urlStringBLS OOH page URL
scrapedAtStringISO-8601 scrape timestamp

Example Output

{
"occupation_title": "Registered Nurses",
"occupation_group": "Healthcare Practitioners and Technical",
"median_annual_wage_usd": 86070,
"median_hourly_wage_usd": 41.38,
"employment_count": 3372400,
"employment_percent_change_10yr": 6.0,
"job_outlook_category": "Faster than average",
"entry_level_education": "Bachelor's degree",
"work_experience": "None",
"on_the_job_training": "None",
"number_of_jobs": 3372400,
"projected_employment_change": 193100,
"summary": "Registered nurses (RNs) provide and coordinate patient care...",
"typical_duties": [
"Assess patient health problems and needs",
"Maintain accurate, detailed reports and records"
],
"work_settings": [
"Hospitals; state, local, and private",
"Ambulatory health care services"
],
"related_occupations": [
"Nurse Anesthetists, Nurse Midwives, and Nurse Practitioners",
"Licensed Practical and Licensed Vocational Nurses"
],
"url": "https://www.bls.gov/ooh/healthcare/registered-nurses.htm",
"scrapedAt": "2026-06-02T10:00:00+00:00"
}

Modes

allOccupations

Scrapes all ~330 occupations from the A-Z index. Best for comprehensive data collection.

byOccupationGroup

Scrapes all occupations within a specific group (e.g., Healthcare, Management). Faster than all occupations.

searchByKeyword

Filters occupations by keyword in the title. E.g., keyword=nurse returns all nursing-related occupations.

byOccupation

Scrapes a single specific occupation by URL or path.

Occupation Groups

  • Management
  • Business and Financial Operations
  • Computer and Information Technology
  • Architecture and Engineering
  • Life, Physical, and Social Science
  • Community and Social Service
  • Legal
  • Educational Instruction and Library
  • Arts, Design, Entertainment, Sports, and Media
  • Healthcare Practitioners and Technical
  • Healthcare Support
  • Protective Service
  • Food Preparation and Serving Related
  • Building and Grounds Cleaning and Maintenance
  • Personal Care and Service
  • Sales and Related
  • Office and Administrative Support
  • Farming, Fishing, and Forestry
  • Construction and Extraction
  • Installation, Maintenance, and Repair
  • Production
  • Transportation and Material Moving
  • Military

Frequently Asked Questions

Q: Is an API key required?
A: No. The BLS OOH is a public government website with no authentication required.

Q: How current is the data?
A: The BLS updates OOH data periodically (typically every 2 years). Wage data is from the most recent BLS Occupational Employment and Wage Statistics survey.

Q: How many occupations are covered?
A: The OOH covers approximately 330 occupational profiles across 23 major groups.

Q: What does "≥$239,200 per year" mean for wage?
A: For high-wage occupations (like physicians), the BLS reports a threshold rather than a specific median. The actor records this as the threshold value.

Q: Can I filter by wage?
A: Yes. Use minMedianWage to filter out occupations below a salary threshold.