Lenny's Jobs Scraper
Pricing
from $3.00 / 1,000 results
Lenny's Jobs Scraper
Scrape Lenny's Jobs for tech roles, companies, locations, experience levels, posting dates, company stages, valuations, technologies, and application links.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
LIAICHI MUSTAPHA
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Structured technology job data, ready for search, analysis, and automation.
Extract structured technology job listings from Lenny's Jobs. Filter by keywords, location, job category, experience level, and posting date, then export the results as JSON, CSV, Excel, XML, or RSS through Apify.
Features
- Extracts job titles, companies, locations, remote status, and application links
- Captures job categories, experience levels, employment types, and posting dates when available
- Includes company stage, valuation, salary range, investors, technologies, and descriptions from public page data
- Supports keyword, location, category, level, and date filters
- Removes duplicate listings automatically
- Saves run diagnostics to the key-value store for monitoring
- Uses browser rendering for the JavaScript-driven job feed
Use Cases
- Monitor new product, engineering, design, growth, and AI roles
- Build curated startup and technology job alerts
- Research hiring demand across company stages and locations
- Track remote-work and seniority trends
- Enrich recruiting, talent intelligence, and labor-market datasets
- Feed job data into n8n, Make, Zapier, Airtable, or a data warehouse
Input
The default input collects up to 25 recent jobs. The Store prefill uses 10 jobs and two loading rounds so Apify's automated quality test can finish quickly.
{"keywords": ["product manager", "AI"],"locations": ["Remote", "United States"],"categories": ["Product"],"levels": ["Senior"],"postedWithinDays": 30,"maxItems": 100,"scrollRounds": 8,"includeDescription": true}
| Field | Type | Default | Description |
|---|---|---|---|
keywords | string[] | [] | Match the title, company, category, description, or technologies |
locations | string[] | [] | Match locations or remote status |
categories | string[] | [] | Match job categories |
levels | string[] | [] | Match experience levels |
postedWithinDays | integer | 30 | Keep recent jobs; use 0 to disable |
maxItems | integer | 25 | Maximum number of saved jobs |
scrollRounds | integer | 4 | Number of feed-loading scrolls |
includeDescription | boolean | true | Include descriptions when available |
proxyConfiguration | object | direct | Optional Apify Proxy settings |
failOnEmpty | boolean | false | Fail empty runs for monitoring workflows |
Output
Each dataset item follows a stable normalized structure. Fields unavailable in the source are returned as null or an empty array.
{"job_title": "Senior Product Manager","company_name": "Example AI","location": "San Francisco, CA / Remote","remote_status": "Remote","employment_type": "Full-time","experience_level": "Senior","job_category": "Product","date_posted": "2026-08-20T10:00:00.000Z","company_stage": "Series B","company_valuation": "$1B","company_industry": "Enterprise AI","salary_min": 180000,"salary_max": 230000,"investors": ["Example Ventures"],"technologies": ["SQL", "Python"],"description": "Build AI-powered products for enterprise teams...","job_url": "https://www.lennysjobs.com/jobs/example-ai/senior-product-manager","company_url": "https://example.ai/","source": "Lenny's Jobs","scraped_at": "2026-08-21T12:00:00.000Z"}
How to Use
- Open the Actor in Apify Console.
- Add optional filters or keep the prefilled defaults.
- Click Start.
- Open the Dataset tab to preview or download the jobs.
- Use the API, schedules, or integrations to automate recurring collection.
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("USERNAME/lennys-jobs-scraper").call(run_input={"keywords": ["product manager", "AI"],"locations": ["Remote"],"maxItems": 100,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["job_title"], item["company_name"], item["job_url"])
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('USERNAME/lennys-jobs-scraper').call({keywords: ['product manager', 'AI'],locations: ['Remote'],maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Integrations
Send the dataset to Google Sheets, Slack, webhooks, Make, Zapier, or your own API. For recurring alerts, create an Apify Task with saved filters and attach a schedule or webhook.
Pricing
Your run cost depends mainly on browser runtime and memory usage. Start with a small maxItems value, then increase maxItems and scrollRounds only when you need broader coverage. Apify displays the exact platform cost for every run.
Limitations
- The Actor extracts public data available on Lenny's Jobs; field availability varies by listing.
- The source is JavaScript-driven and may occasionally be unavailable.
- Filters are applied to the jobs loaded during the run, not to every job in the source database.
- Website changes can require updates to field aliases or extraction fallbacks.
FAQ
Does this Actor require a login?
No. It reads public job listings and does not use account credentials.
Can I collect only remote roles?
Yes. Add Remote to locations.
Can I monitor newly posted jobs?
Yes. Save the input as an Apify Task, set postedWithinDays to a small value, and run it on a schedule.
Why are some fields null?
Not every listing exposes salary, company funding, valuation, technologies, employment type, or a description.
What happens when no jobs match?
The default run succeeds and writes the reason to STATS. Set failOnEmpty to true when an empty result should trigger monitoring alerts.
Is this Actor affiliated with Lenny's Jobs, Lenny Rachitsky, or TrueUp?
No. This is an independent data-extraction tool for public information.
Responsible Use
Use the Actor in accordance with applicable laws, the source website's terms, and privacy requirements. Avoid excessive run frequency and do not use the data for spam or discriminatory employment decisions.