AIJobs.net Scraper
Pricing
Pay per event
AIJobs.net Scraper
Scrape AI/ML/Data Science job listings from aijobs.net. Filter by keyword, experience level, and remote status. Extracts salary, skills, company, tasks, and apply URLs.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Extract AI, ML, and Data Science job listings from aijobs.net — the dedicated job board with 50,000+ AI-focused positions worldwide. Get job titles, companies, salaries, required skills, perks, seniority levels, and more — no login required.
What does it do?
AIJobs.net Scraper retrieves job listings from aijobs.net and fetches full job detail pages to give you comprehensive, structured data. You can filter by keyword (e.g., Python, LLM, machine learning), experience level (Entry / Mid / Senior / Expert), and remote status. The scraper paginates automatically and returns up to your specified limit.
For each job, the actor extracts:
- 🏷️ Job title and company name with company profile URL
- 💰 Salary range (when disclosed — e.g., "USD 160K–300K")
- 📍 Location and remote flag
- 🎓 Seniority level (Entry-level, Mid-level, Senior-level, Expert)
- 🛠️ Skills / tech stack (Python, LLM, AWS, FastAPI, etc.)
- 🎁 Perks and benefits (Remote work, Mentoring, Flexible hours, etc.)
- 📋 Job responsibilities / tasks from the detail page
- 🎓 Education requirements
- 🔗 Direct apply URL (ready for automating applications)
- 🕒 Posted time (e.g., "8h ago", "20d ago")
Who is it for?
🏢 Recruiters and talent acquisition teams
Build talent pipelines and benchmark what AI roles are being posted. Monitor which companies are hiring, what salaries they offer, and what skills they require — all without manually browsing the site.
📊 Labor market researchers and analysts
Track AI job market trends over time. Compare seniority distributions, remote vs on-site ratios, salary ranges by location, and in-demand skills across thousands of listings.
🤖 Job aggregator developers
Feed structured AI job data into your own job board, HR platform, newsletter, or recommendation engine. The output is clean JSON — no HTML parsing required on your side.
💼 Job seekers and career coaches
Automate job discovery. Export listings to a spreadsheet, filter by skills you have or want to learn, and track fresh postings daily.
🏗️ Salary benchmarking tools
Extract disclosed salary data across AI roles to power compensation analytics, offer calculators, or regional salary comparison dashboards.
Why use this scraper?
- ✅ No authentication required — scrapes publicly accessible listings
- ✅ No browser needed — pure HTTP + HTML parsing (fast and cheap)
- ✅ Keyword + seniority + remote filters — server-side filtering means you get only the jobs you need
- ✅ Full detail pages included — company, tasks, education, apply URL (not just list data)
- ✅ Handles pagination automatically — get up to thousands of listings in one run
- ✅ Clean structured output — flat JSON ready for spreadsheets, databases, or APIs
📦 What data does it extract?
| Field | Description | Example |
|---|---|---|
url | Job detail page URL | https://aijobs.net/job/ai-engineer-mts-remote-107552/ |
title | Job title | AI Engineer (MTS) |
company | Company name | micro1 |
companyUrl | Company profile on aijobs.net | https://aijobs.net/company/micro1-12373/ |
salaryRange | Disclosed salary range | USD 160K-300K |
seniority | Experience level | Mid-level |
jobType | Full Time / Part Time | Full Time |
location | Location text | Remote, San Francisco, CA |
isRemote | Remote job flag | true |
isFeatured | Featured/sponsored listing | false |
skills | Tech stack tags | ["Python", "LLM", "FastAPI"] |
perks | Benefits and perks | ["Remote work", "Mentoring"] |
postedAt | Relative post time | 8h ago |
tasks | Job responsibilities | ["Build LLM pipelines", ...] |
education | Required education | ["Bachelor of Science"] |
roles | Role tags | ["AI Engineer", "ML Engineer"] |
applyUrl | Direct apply link | https://aijobs.net/job/VhH.../apply/ |
description | Meta description | "Architect and develop..." |
💰 How much does it cost to scrape AI jobs from aijobs.net?
This actor uses pay-per-result (PPE) pricing — you only pay for data you actually extract.
| Plan | Start fee | Cost per 1,000 jobs |
|---|---|---|
| FREE | $0.005 | $0.067 |
| BRONZE | $0.005 | $0.058 |
| SILVER | $0.005 | $0.046 |
| GOLD | $0.005 | $0.035 |
| PLATINUM | $0.005 | $0.023 |
| DIAMOND | $0.005 | $0.016 |
Typical run costs (BRONZE plan):
- 10 jobs with detail pages: ~$0.006 total (start fee $0.005 + 10 × $0.000058)
- 50 jobs with detail pages: ~$0.008 total
- 100 jobs with detail pages: ~$0.011 total
Free plan estimate: Apify's free plan gives $5/month in platform credits, which covers roughly 85,000+ job extractions per month at BRONZE pricing.
The start fee ($0.005 one-time per run) covers actor initialization regardless of result count.
🚀 How to use it
Step 1 — Open the actor
Go to apify.com/automation-lab/aijobs-scraper and click Try for free.
Step 2 — Configure your search
Fill in the input fields:
- Search keyword — the skill or technology to filter by (e.g.,
LLM,PyTorch,MLOps). Leave empty for all AI jobs. - Experience level — Entry-level, Mid-level, Senior-level, or Expert.
- Remote jobs only — toggle on to get only remote listings.
- Max results — how many jobs to extract (default: 50).
- Include job details — enable to fetch company names, tasks, and apply URLs.
Step 3 — Run
Click Save & Run. Results appear in the Dataset tab.
Step 4 — Export
Download as JSON, CSV, Excel, or XML from the dataset view, or connect via API.
⚙️ Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchKeyword | String | — | Keyword filter (e.g., Python, LLM) |
experienceLevel | String | — | EN = Entry, MI = Mid, SE = Senior, EX = Expert |
remoteOnly | Boolean | false | Filter for remote jobs only |
maxResults | Integer | 50 | Max job listings to return |
includeJobDetails | Boolean | true | Fetch full detail page (company, tasks, apply URL) |
maxRequestRetries | Integer | 3 | Retries per failed request |
📤 Output example
{"url": "https://aijobs.net/job/ai-engineer-mts-remote-107552/","title": "AI Engineer (MTS)","company": "micro1","companyUrl": "https://aijobs.net/company/micro1-12373/","salaryRange": "USD 160K-300K","seniority": "Mid-level","jobType": "","location": "Remote","isRemote": true,"isFeatured": true,"skills": ["API Development", "AWS", "FastAPI", "LLM", "Python"],"perks": ["Mentoring", "Open source contributions", "Remote work"],"postedAt": "8h ago","tasks": ["Architect and develop scalable AI systems","Build APIs for AI platforms","Develop and integrate LLMs and multimodal AI systems"],"education": ["Bachelor of Science", "Master of Science"],"roles": ["AI Engineer", "Machine Learning Engineer"],"applyUrl": "https://aijobs.net/job/VhHQynwS4G3fRGH/apply/","description": "Architect and develop scalable AI systems; Build APIs for AI platforms..."}
💡 Tips
- Use specific skill keywords like
LLM,Kubernetes, orPyTorchfor targeted results. Broad searches return 50k+ jobs — narrow it down. - Set
includeJobDetails: falsefor faster, cheaper runs when you only need title, salary, location, and skills from list pages. - Combine filters —
experienceLevel: SE+remoteOnly: truefor senior remote roles. - Run daily with a small
maxResultsto monitor new postings. Combine with webhooks to get Slack notifications. - Salary data is not always disclosed — some companies hide it; the
salaryRangefield will be empty for those listings. - Company names may be truncated — some companies display partially on the site. The
companyUrlalways resolves to the correct company page.
🔗 Integrations
Export to Google Sheets
Use Apify's Google Sheets integration to stream extracted jobs directly into a spreadsheet for team review or further filtering.
Feed a job recommendation engine
Use the structured skills and roles arrays to match job listings against candidate profiles in your internal database or ATS.
Daily job alert pipeline
Schedule this actor to run every morning with your target keyword. Combine with the Send Email actor to receive new listings in your inbox before most applicants see them.
Salary benchmarking dashboard
Export monthly snapshots of salaryRange + location + seniority to build a live AI salary benchmark tool. Visualise in Tableau, Google Data Studio, or Power BI.
ATS/CRM enrichment
Use companyUrl + company name to enrich your HR system with the companies actively hiring in AI — useful for targeted outreach and pipeline generation.
🔌 API usage
Node.js (Apify Client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('automation-lab/aijobs-scraper').call({searchKeyword: 'LLM',experienceLevel: 'MI',remoteOnly: true,maxResults: 100,includeJobDetails: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python (Apify Client)
from apify_client import ApifyClientclient = ApifyClient(token="YOUR_APIFY_TOKEN")run = client.actor("automation-lab/aijobs-scraper").call(run_input={"searchKeyword": "LLM","experienceLevel": "MI","remoteOnly": True,"maxResults": 100,"includeJobDetails": True,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
cURL
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~aijobs-scraper/runs?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchKeyword": "LLM","experienceLevel": "MI","remoteOnly": true,"maxResults": 100,"includeJobDetails": true}'
🤖 MCP (Claude AI) integration
Use this actor directly from Claude Code, Claude Desktop, Cursor, or VS Code via the Apify MCP server.
Claude Code (terminal)
$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/aijobs-scraper"
Then in Claude:
"Use the aijobs-scraper to find remote senior Python ML engineer jobs and give me the top 10 with salary ranges."
"Scrape 50 LLM engineer job listings from aijobs.net and tell me the most common required skills."
"Get entry-level AI jobs posted today and export them to a CSV."
Claude Desktop / Cursor / VS Code
Add to your MCP config file (claude_desktop_config.json or .cursor/mcp.json):
{"mcpServers": {"apify": {"type": "http","url": "https://mcp.apify.com?tools=automation-lab/aijobs-scraper","headers": {"Authorization": "Bearer YOUR_APIFY_TOKEN"}}}}
⚖️ Legality
This actor scrapes publicly accessible job listings from aijobs.net — the same data visible to any browser visitor without logging in. It respects normal HTTP request patterns and does not bypass authentication.
Before use, review aijobs.net's Terms of Service. Use responsibly:
- Do not flood the site with excessive concurrent requests
- Cache data locally rather than re-scraping the same listings repeatedly
- Do not use scraped data to misrepresent job postings or contact companies without permission
❓ FAQ
Does this require an aijobs.net account? No. All scraped data is publicly accessible without authentication.
How many jobs can I extract?
The site lists 50,000+ jobs. Pagination supports all available pages. Set maxResults to your desired limit.
How fresh is the data? Each run fetches live data — as fresh as aijobs.net's current listings. Jobs posted "8h ago" will reflect the actual posting time.
Why are some salary fields empty?
Many companies on aijobs.net do not disclose salary ranges. The salaryRange field will be an empty string for those listings.
The filter returned some jobs outside my experience level — why? aijobs.net's server-side filter returns the closest matches. Some borderline listings may appear.
My run succeeded but returned fewer items than maxResults — why?
The site may have fewer matching listings than your requested limit. Try a broader keyword or remove experience level filter.
Can I scrape job detail pages without visiting them?
Set includeJobDetails: false to skip detail page fetches. You'll get list-only data (title, salary, skills, location, seniority) at roughly half the request cost.
🔎 Related scrapers
- LinkedIn Jobs Scraper — scrape LinkedIn job postings at scale
- Indeed Scraper — extract job listings from Indeed
- Glassdoor Jobs Scraper — Glassdoor job and salary data