Glassdoor Scraper
Pricing
Pay per usage
Glassdoor Scraper
Scrape Glassdoor job listings, company reviews, salary data, and interview experiences. Search by keyword, location, company, and date range with full pagination support.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
abdulrahman alrashid
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape job listings, company reviews, salary data, and interview experiences from Glassdoor. Uses Playwright for JavaScript rendering.
Features
- Job Listings — Search by keyword, location, salary range, job type, and date posted. Returns title, company, location, salary estimate, job type, posted date, and full job description.
- Company Reviews — Scrape reviews with overall rating, pros, cons, advice to management, reviewer info, date, helpful votes, and sub-ratings (culture, work-life balance, compensation, career opportunities, senior management, diversity).
- Salary Data — Scrape base pay range, total pay range, additional pay, and number of salaries reported. Search by job title or scrape by company.
- Interview Experiences — Scrape difficulty rating, experience sentiment, interview questions, process description, offer status, application method, and date.
- Company Profiles — Scrape company overview including rating, CEO approval, recommend to friend %, size, industry, revenue, headquarters, founded year, and sub-ratings.
Input
| Field | Type | Default | Description |
|---|---|---|---|
scrapeMode | enum | jobs | What to scrape: jobs, reviews, salaries, interviews, or companyProfile |
searchKeyword | string | Search keyword (e.g., "Software Engineer", "Google") | |
location | string | Location filter (e.g., "New York, NY") | |
companyUrls | array | [] | Direct Glassdoor company URLs for targeted scraping |
maxResults | integer | 100 | Maximum results to scrape (0 = unlimited) |
salaryMinimum | integer | 0 | Minimum salary filter (jobs mode) |
salaryMaximum | integer | 0 | Maximum salary filter (jobs mode) |
jobType | enum | Filter: fulltime, parttime, contract, internship, temporary | |
datePosted | enum | Filter: 1 (24h), 3, 7, 14, 30 days | |
reviewSort | enum | date_desc | Sort reviews: date_desc, date_asc, rating_desc, rating_asc, helpfulness |
reviewMinRating | integer | 0 | Minimum review rating filter (1-5) |
includeJobDescription | boolean | true | Visit each job page for full description (slower) |
maxConcurrency | integer | 3 | Parallel pages (lower = safer) |
proxyConfiguration | object | Apify Residential | Proxy settings (residential recommended) |
Example Input
Search for jobs
{"scrapeMode": "jobs","searchKeyword": "Data Scientist","location": "San Francisco, CA","maxResults": 50,"salaryMinimum": 120000,"jobType": "fulltime","includeJobDescription": true}
Scrape company reviews
{"scrapeMode": "reviews","companyUrls": ["https://www.glassdoor.com/Reviews/Google-Reviews-E9079.htm"],"maxResults": 200,"reviewSort": "date_desc","reviewMinRating": 0}
Scrape salary data
{"scrapeMode": "salaries","companyUrls": ["https://www.glassdoor.com/Salary/Google-Salaries-E9079.htm"],"maxResults": 100}
Scrape interview experiences
{"scrapeMode": "interviews","searchKeyword": "Product Manager","location": "New York, NY","maxResults": 50}
Output
Results are stored in the default dataset. Each result includes a type field (job, review, salary, interview, or companyProfile) and a scrapedAt timestamp.
Job Listing Output
{"type": "job","title": "Senior Software Engineer","company": "Google","location": "Mountain View, CA","salaryEstimate": {"text": "$150K - $250K (Employer est.)","min": 150000,"max": 250000,"currency": "USD","period": "yearly","type": "employer_estimate"},"jobType": "Full-time","postedDate": "3d","easyApply": false,"rating": 4.4,"url": "https://www.glassdoor.com/job-listing/...","description": "Full job description text...","scrapedAt": "2025-01-15T10:30:00.000Z"}
Review Output
{"type": "review","company": "Google","reviewTitle": "Great company with amazing perks","overallRating": 5,"pros": "Excellent benefits, smart colleagues...","cons": "Can be bureaucratic at times...","adviceToManagement": "Keep innovating...","reviewerTitle": "Software Engineer","reviewerLocation": "Mountain View, CA","reviewDate": "Jan 15, 2025","employmentStatus": "Current Employee","helpfulCount": 12,"cultureRating": 4.5,"workLifeBalanceRating": 4.0,"compensationRating": 5.0,"careerOpportunitiesRating": 4.5,"seniorManagementRating": 3.5,"scrapedAt": "2025-01-15T10:30:00.000Z"}
Pricing
This actor uses Pay-Per-Event pricing at $1.00 per 1,000 results ($0.001 per result).
Anti-Bot Handling
The scraper uses several techniques to avoid detection:
- Session pool with automatic rotation
- Realistic browser fingerprinting (user agent, viewport, WebGL, plugins)
- Navigator property overrides to remove automation flags
- Human-like delays between actions and page loads
- Random scrolling behavior
- Cookie persistence per session
- Residential proxy support (strongly recommended)
Tips
- Use residential proxies — Glassdoor aggressively blocks datacenter IPs. Apify residential proxies are selected by default.
- Keep concurrency low — 2-3 concurrent pages works best. Higher values increase block risk.
- Start with small runs — Test with
maxResults: 20before scaling up. - Direct URLs are faster — When you know the company, provide
companyUrlsinstead of searching.
Limitations
- Glassdoor may require login for some data after a few pages. The scraper extracts what is publicly visible.
- Page structure changes may require selector updates. The scraper uses multiple fallback selectors for resilience.
- Very high-volume scraping may trigger CAPTCHAs despite stealth measures.