LinkedIn Jobs Scraper (no cookies)
Pricing
from $1.60 / 1,000 jobs
LinkedIn Jobs Scraper (no cookies)
Scrape LinkedIn job listings by keyword and location — title, company, location, post date, URL, and description. No login, no cookies.
LinkedIn Jobs Scraper — Scrape LinkedIn Jobs by Keyword & Location (No API Key, No Login)
Scrape LinkedIn jobs at scale by keyword and location — get job title, hiring company, location, post date, direct URL, and full description with criteria — with no login, no cookies, and no API key. Export scraped data to JSON, CSV, Excel, or XML, schedule runs via API, and integrate with your tools and AI workflows.
Built for AI agents: plug the LinkedIn Jobs Scraper into Claude, ChatGPT / Codex, and Cursor through the Apify MCP server so your agents can pull live LinkedIn job data on demand.
What it can do • AI agents (MCP) • How to scrape • Data fields • Limits • Output • Pricing • Integrations • FAQ • Other Actors
What can LinkedIn Jobs Scraper do? {#what-can-linkedin-jobs-scraper-do}
LinkedIn Jobs Scraper lets you scrape LinkedIn jobs at scale and turns any set of job keywords into clean, structured job data. Give it what to search for (for example python developer, product manager, or data engineer) plus an optional location, and it returns a tidy list of matching LinkedIn job postings — each with the job title, hiring company, location, publish date, and a direct link to the listing. Optionally, it enriches every job with its full description and criteria.
There is no API key, no login, and no cookies or account required. The actor handles everything for you and delivers ready-to-use data you can export to JSON, CSV, Excel, or XML and pipe straight into a spreadsheet, a database, an ATS, or an AI agent. It only collects publicly available data — the same job listings anyone can view without signing in.
Here is what you can do when you scrape LinkedIn jobs with this actor:
✅ Scrape LinkedIn jobs by keyword and location
Feed one or many keywords and a single location filter. The scraper runs each keyword and merges the results into one dataset, so you can track dozens of role types in a single run — worldwide or narrowed to a country, city, or Remote.
🗂️ Get structured, ready-to-use job records
Every job comes back as a flat, predictable record — no messy HTML to parse. Titles, companies, locations, and post dates are already separated into their own fields, ready for analysis.
💬 Extract full job descriptions and criteria
Flip on withDescription to fetch each posting's complete description plus criteria (seniority level, employment type, job function, industries, applicant count). Leave it off for a faster, lightweight run when you only need the core fields.
📊 Scrape a bunch of LinkedIn jobs at once
Queue multiple keywords in one run and cap the total with maxItems. Perfect for building a market-wide snapshot of who is hiring for which roles, and where — at scale, with no limitations on the number of keywords you track.
🔄 Fast, fresh data on every run
Each run pulls the current listings for your query, so you always work with up-to-date postings. No caching — just fresh data. Schedule it to keep a rolling feed of new jobs.
⚡ Go beyond the limitations of the official LinkedIn API
You point it at keywords; it does the rest — retries, pagination, and formatting are all handled internally. Get more structured job data than the official API exposes, without managing tokens, quotas, or credentials.
Use with AI agents — Claude, ChatGPT & Cursor (MCP) {#use-with-ai-agents-mcp}
The LinkedIn Jobs Scraper is fully compatible with the Apify Model Context Protocol (MCP) server, so AI agents and assistants can call it as a live tool.
- Claude (Claude Desktop / Claude API) — let Claude fetch and reason over real LinkedIn job listings.
- ChatGPT / Codex — expose the scraper as a callable tool in your GPT or agent workflows.
- Cursor — pull job data directly into your coding and research sessions.
Because results come back as clean structured data, they drop straight into downstream MCP connectors — Slack, Notion, Airtable, Google Sheets, Zapier, Make, and n8n — with no glue code. Ask your agent to "find remote data engineer roles posted this week" and it can run this actor, filter the output, and write it to your tool of choice.
How to scrape LinkedIn jobs {#how-to-scrape-linkedin-jobs}
You can scrape LinkedIn jobs in under two minutes — get your first results free:
- Open the LinkedIn Jobs Scraper on Apify.
- Under What to search, add one or more keywords to the Job keywords (
searchQueries) field — e.g.python developer. - (Optional) Set a Location (
location) such asUnited States,London, orRemote. Leave it empty to search worldwide. - Choose Results per query (
resultsPerQuery) — how many listings to pull per keyword. - (Optional) Enable Include full description (
withDescription) if you want each job's full text and criteria. - Set Max total jobs (
maxItems) to cap the run size. - Click ▶ Start, then download your results as JSON, CSV, Excel, or XML, or grab them via the API.
No account credentials of any kind are required — just run it.
What data can you scrape from LinkedIn jobs? {#what-data-can-you-scrape}
By default, each job record you scrape from LinkedIn contains the following fields:
| Field | Type | Description |
|---|---|---|
id | string | Unique LinkedIn job posting ID. |
url | string | Direct link to the job listing. |
type | string | Record type — always job. |
query | string | The keyword this result matched. |
title | string | Job title. |
company | string | Hiring company name. |
location | string | Job location (city, region, country). |
postedAt | string | Publish date of the listing (YYYY-MM-DD). |
When Include full description (withDescription) is enabled, each record is additionally enriched with:
| Field | Type | Description |
|---|---|---|
description | string | Full job description text. |
employmentType | string | e.g. Full-time, Part-time, Contract. |
seniorityLevel | string | e.g. Entry level, Mid-Senior level. |
jobFunction | string | Job function / category. |
industries | string | Industry of the hiring company. |
applicants | string | Reported applicant count, when available. |
Fields depend on what each individual posting exposes; missing values are returned empty or omitted.
Use cases
- Recruiting & sourcing — track which companies are hiring for target roles and reach out early.
- Job boards & aggregators — feed fresh, structured listings into your own site or app.
- Market & salary research — analyze demand for skills, titles, and locations over time.
- Sales & lead generation — identify companies scaling specific teams as buying signals.
- Competitor hiring intelligence — monitor rivals' open roles to infer strategy and growth.
- Career tools & alerts — build personalized job-alert products for candidates.
- AI agents & RAG — supply LLMs with real-time job data for answering and summarizing.
Input examples
All examples use the real input field names from the actor's schema.
Basic search by keyword
{"searchQueries": ["python developer"],"resultsPerQuery": 25,"maxItems": 100}
Search a specific location
{"searchQueries": ["product manager"],"location": "London","resultsPerQuery": 50,"maxItems": 100}
Track multiple roles at once
{"searchQueries": ["data engineer", "data scientist", "ml engineer"],"location": "United States","resultsPerQuery": 30,"maxItems": 100}
Remote jobs with full descriptions
{"searchQueries": ["frontend developer"],"location": "Remote","resultsPerQuery": 40,"withDescription": true,"maxItems": 80}
Worldwide search (no location filter)
{"searchQueries": ["devops engineer"],"resultsPerQuery": 50,"maxItems": 100}
Input reference
| Field | Key | Type | Default | Notes |
|---|---|---|---|---|
| Job keywords | searchQueries | array of strings | ["python developer"] | One or more search terms; each is run separately. |
| Location | location | string | (empty) | e.g. United States, London, Remote. Empty = worldwide. |
| Results per query | resultsPerQuery | integer | 25 | 1–50 listings per keyword. |
| Include full description | withDescription | boolean | false | Also fetch each job's full description and criteria (slower). |
| Max total jobs | maxItems | integer | 100 | Hard cap across all queries (1–100). |
Limiting results {#limits}
Two fields control how much data a run collects when you scrape LinkedIn jobs:
resultsPerQuery— maximum listings per keyword (1–50).maxItems— a hard cap on the total number of jobs across all keywords in the run (1–100).
For example, with three keywords and resultsPerQuery: 50, up to 150 jobs could match — but maxItems: 100 stops the run at 100 records. A single run lasts at most around 10 minutes. To collect more, split your keywords across multiple runs or schedule recurring runs.
Output example {#output-example}
A single job record from a real run:
{"id": "4427506926","url": "https://www.linkedin.com/jobs/view/4427506926","type": "job","query": "data engineer","title": "Data Engineer","company": "Welkoop","location": "Apeldoorn, Gelderland, Netherlands","postedAt": "2026-06-30"}
With withDescription enabled, the same record is enriched:
{"id": "4427506926","url": "https://www.linkedin.com/jobs/view/4427506926","type": "job","query": "data engineer","title": "Data Engineer","company": "Welkoop","location": "Apeldoorn, Gelderland, Netherlands","postedAt": "2026-06-30","description": "We are looking for a Data Engineer to design and maintain our data pipelines...","employmentType": "Full-time","seniorityLevel": "Mid-Senior level","jobFunction": "Information Technology","industries": "Retail","applicants": "27"}
How much does scraping LinkedIn jobs cost? {#how-much-does-scraping-linkedin-jobs-cost}
This actor uses a simple, pay-per-result model — you pay for the job records you collect, not for time spent configuring proxies or retries. Because runs are efficient and finish quickly, costs stay low and predictable even when you scrape many keywords at once.
New Apify accounts include free monthly usage credits, so you can get your first results free in under 2 minutes and test the scraper at no cost. See the pricing tab on the actor page for current rates. There are no separate subscriptions, no API keys, and no per-seat fees.
Integrate with n8n, Zapier, and Make {#integrations}
Run the actor from any HTTP-capable tool using the Apify API. The actor path is myagizm~linkedin-jobs-scraper. Connect natively to Make, Zapier, n8n, Slack, Airbyte, Gumloop, CrewAI, IFTTT, Lindy, GitHub, Google Sheets, and Google Drive, or drive it with the snippets below.
Synchronous — run and get results in one call
curl -X POST "https://api.apify.com/v2/acts/myagizm~linkedin-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQueries": ["python developer"],"location": "United States","resultsPerQuery": 25,"maxItems": 100}'
Asynchronous — start a run, fetch results later
# 1) Start the runcurl -X POST "https://api.apify.com/v2/acts/myagizm~linkedin-jobs-scraper/runs?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQueries": ["data engineer", "data scientist"],"location": "Remote","resultsPerQuery": 50,"maxItems": 100}'# 2) When the run finishes, fetch its dataset itemscurl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_APIFY_TOKEN&clean=true&format=json"
You can also push results into Slack, Notion, Airtable, and Google Sheets with the Apify connectors, or trigger runs with webhooks — no code required.
Support {#support}
Questions, feature requests, or an unexpected result? Open an Issue on the actor's Issues tab and include your input configuration and the run ID. Improvements and fixes ship regularly.
FAQ {#faq}
Is it legal to scrape LinkedIn jobs?
This actor collects only publicly available data — the same job listings anyone can view without logging in. Public data collection is generally permitted, but you are responsible for how you use the results. Consult your legal counsel for your specific use case and comply with applicable laws, including data-protection rules such as GDPR.
Do I need a LinkedIn account or API key to scrape LinkedIn jobs?
No. There is no login, no cookies, and no API key. The actor handles access for you.
Do I need proxies to scrape LinkedIn jobs?
No. Proxy handling, retries, and rotation are all managed internally — you never configure or supply proxies yourself.
Can I use LinkedIn Jobs Scraper with the Apify API?
Yes. Start runs and fetch datasets through the Apify API using the actor path myagizm~linkedin-jobs-scraper. Use the synchronous endpoint for quick calls or the asynchronous endpoint for larger jobs.
Can I get LinkedIn job data through an MCP server (AI agents)?
Yes. The actor works with Claude, ChatGPT / Codex, and Cursor via the Apify MCP server, so your AI agents can call it as a live tool and reason over the results.
Can I integrate LinkedIn job data with other apps?
Yes. Results flow into Slack, Notion, Airtable, Google Sheets, Zapier, Make, and n8n, plus any HTTP-capable tool via the API and webhooks.
Can I export LinkedIn jobs to CSV, Excel, or JSON?
Yes. Download results as JSON, CSV, Excel, or XML from the run's dataset, or fetch them via the API in any of those formats.
Can I scrape multiple LinkedIn jobs at once?
Yes. Add as many terms as you like to searchQueries; each keyword runs separately and the results merge into one dataset. There are no limitations on the number of keywords per run.
How many jobs can I get per keyword?
Up to resultsPerQuery (1–50) listings per keyword, capped by maxItems (1–100) across the whole run.
Can I filter LinkedIn jobs by location?
Yes. Set location to a country, city, or Remote. Leave it empty to search worldwide.
How do I get full job descriptions?
Set withDescription to true. Each record is then enriched with the full description plus criteria like employment type, seniority level, job function, and industry. This makes runs a bit slower.
Can I scrape jobs from private or logged-in-only pages?
No. This actor scrapes publicly available job listings only. It does not access private accounts, gated content, or anything requiring a login.
How fresh is the data?
Every run pulls current listings for your query — no caching, just fresh data. Schedule the actor to keep a rolling feed of new postings.
Can I schedule the LinkedIn Jobs Scraper?
Yes. Use Apify Schedules to run the scraper hourly, daily, or on any cron expression, and route results to your tools automatically.
Why did I get fewer results than expected?
Some keywords or locations simply have fewer public postings, and maxItems caps the total. Broaden your keywords or raise the limits.
Want other LinkedIn data? {#want-other-linkedin-data}
Need more than jobs? Explore the rest of the LinkedIn (no cookies, no login) family by myagizm — each one scrapes publicly available data and exports to JSON, CSV, Excel, or XML:
- LinkedIn Profile Scraper — extract full public LinkedIn profiles.
- LinkedIn Company Scraper — pull company pages, size, industry, and details.
- LinkedIn Profile Posts Scraper — collect posts and activity from any public profile.
- LinkedIn People + Email Scraper — find people and their contact details at scale.
Browse every actor on the myagizm Apify Store page.
Related searches {#related-searches}
linkedin jobs scraper · scrape linkedin job postings · remote jobs scraper · job market research data · linkedin jobs api alternative · job listings csv export · hiring signals data · recruitment intelligence · job description scraper · daily job feed automation · x402 actor · ai agent scraper no account · pay with usdc api · mcp scraper for agents
Run it from an AI agent — no Apify account needed (x402) {#x402}
This actor accepts agentic payments over the open x402 protocol. An AI agent can pay for a run in USDC on Base and get the data without an Apify account, a credit card, or an API key:
# one-time: wallet + prepaid token (agent side)npx -y awal auth login <email>npx awal x402 pay 'https://agi.apify.com/protocols/x402/prepaid-tokens?amount=1¤cy=usd' --max-amount 1000000 --json# then use the returned token exactly like an Apify API tokencurl "https://api.apify.com/v2/acts/myagizm~linkedin-jobs-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer $PREPAID_TOKEN" -H 'Content-Type: application/json' -d '{INPUT}'
Why it works here: this actor is pay per event and runs with limited permissions, the two conditions x402 requires. You are charged per result, so an agent pays only for the rows it receives. The prepaid token is a hard spending cap and expires 14 days after purchase.
Disclaimer
This is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn. All product names, logos, and brands are property of their respective owners. Use this actor responsibly and only to collect publicly available data in compliance with applicable laws and terms.
Resources {#resources}
- Apify API documentation
- Apify MCP server (AI agents)
- Exporting datasets (JSON, CSV, Excel, XML)
- Scheduling actor runs
- Actor page on Apify Store
中文说明 —— LinkedIn 职位抓取工具
免登录抓取 LinkedIn 公开数据 —— 按关键词与地区抓取招聘信息,可含职位描述。不需要 API Key、不需要 OAuth 应用、不需要登录或 Cookie。结果可导出为 JSON、CSV、Excel、XML,也可通过 Apify API 定时运行并接入 n8n、Zapier、Make 等工具。
两分钟内免费拿到第一批数据 —— 填入内容、点击 Start 即可。无需配置,试用不需要信用卡。
能做什么
- 💼 按关键词 + 地区搜索职位。
- 📝 可选完整职位描述(
withDescription)。 - 🏢 公司名称与职位链接,可直接投递或入库。
- 🕒 发布时间,便于只看新岗位。
- 📏
resultsPerQuery/maxItems控制成本。 - 📤 导出 JSON / CSV / Excel / XML。
谁在用
- 🧑💼 求职者与自由职业者 —— 每天自动收集新岗位。
- 📊 人才市场研究 —— 分析岗位与薪资趋势。
- 🏢 HR 与竞品分析 —— 看对手在招什么人。
- 🤖 自动化投递流程 —— 把岗位喂给后续工作流。
可以抓取哪些数据
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | Unique LinkedIn job posting ID. |
url | string | 链接 |
type | string | 记录类型 / 公司类型 |
query | string | The keyword this result matched. |
title | string | 标题 / 职位名称 |
company | string | 当前公司 |
postedAt | string | 发布时间 |
description | string | 描述 |
employmentType | string | 雇佣类型(全职 / 兼职 / 合同等) |
seniorityLevel | string | e.g. Entry level, Mid-Senior level. |
jobFunction | string | Job function / category. |
industries | string | Industry of the hiring company. |
applicants | string | 申请人数(平台公开时) |
字段取决于该条目公开了什么;不存在的值返回
null,数据结构保持稳定。
输入示例
{"searchQueries": ["python developer"],"resultsPerQuery": 25,"maxItems": 100}
输出示例
{"id": "4427506926","url": "https://www.linkedin.com/jobs/view/4427506926","type": "job","query": "data engineer","title": "Data Engineer","company": "Welkoop","location": "Apeldoorn, Gelderland, Netherlands","postedAt": "2026-06-30"}
价格
采用按结果计费:只为真正拿到的数据付费,不按运行时间收费。
- 💸 成本 = 结果数量 × 单价,预算可提前算清。
- 📉 Apify 的 Bronze / Silver / Gold / Platinum / Diamond 套餐享阶梯折扣。
- 🆓 新账号自带每月免费额度,第一次运行不花钱。
- 🚫 无代理附加费、无单次请求费、无最低消费。
实时价格见 Apify 商店页面。
使用建议
- 🕒 每天定时运行 + 按职位链接去重,即可得到增量岗位流。
- 📝 描述会显著增加数据量,只在需要筛选时开启。
- 🌍 地区写法要与平台一致(如
Remote、United States)。 - 🎯 多个关键词分别建 task,便于分渠道统计。
其他LinkedIn数据
- 👤 LinkedIn 个人资料抓取 —— 姓名、头衔、经历、教育、技能。
- 📧 LinkedIn 人员 + 邮箱抓取 —— 批量资料并可查找工作邮箱。
- 🏢 LinkedIn 公司抓取 —— 公司规模、行业、简介、网站。
- 💼 LinkedIn 职位抓取 —— 按关键词与地区抓招聘信息。
- 📝 LinkedIn 帖子抓取 —— 个人主页发布的内容与互动。
其他平台同样是免登录、按结果计费:Instagram · TikTok · X(推特) · Reddit · Google 地图 · Google 新闻。完整家族见 myagizm 商店主页。
配合 AI 智能体使用(MCP)
本 Actor 已接入 Apify MCP 服务器,Claude、ChatGPT、Cursor 等助手可以把它当作工具直接调用,用自然语言提问即可拿到结构化结果,无需写胶水代码。
集成与 API
支持 Make、Zapier、n8n、Slack、Airbyte、Gumloop、CrewAI、IFTTT、Lindy、GitHub、Google Sheets、Google Drive,以及 Webhook、定时任务与 MCP 服务器。
curl -X POST "https://api.apify.com/v2/acts/myagizm~linkedin-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQueries": ["python developer"],"resultsPerQuery": 25,"maxItems": 100}'
把 format 改成 json、csv、xlsx 或 xml 即可导出不同格式。
常见问题
需要 API Key 或登录吗? 不需要。没有 API Key、没有 OAuth 应用、不登录、不用 Cookie,也不会使用你的账号。
抓取LinkedIn合法吗? 只采集公开可见的数据,即任何未登录访客都能看到的内容,不登录、不绕过访问控制。合规责任由使用者承担:如涉及个人数据请遵守 GDPR / CCPA 与平台条款。
能抓私密内容吗? 不能,需要登录或已删除的内容会被跳过并记录在日志中。
需要配置代理吗? 不需要,已内置托管。
支持导出 CSV / Excel / JSON 吗? 支持 JSON、CSV、Excel、XML。
可以通过 Apify API 调用吗? 可以,见上方示例。
支持 AI 智能体(MCP)吗? 支持,Claude、ChatGPT、Cursor 均可当作工具调用。
可以定时运行吗? 可以,支持 Apify Schedules、API 与 Webhook。
数据有多新? 不缓存,每次运行都读取当前公开页面。
让 AI 代理直接调用 —— 无需 Apify 账号(x402)
本工具支持基于开放 x402 协议 的代理支付:AI 代理可以用 Base 链上的 USDC 直接付费运行,无需 Apify 账号、信用卡或 API 密钥。
npx -y awal auth login <邮箱>npx awal x402 pay 'https://agi.apify.com/protocols/x402/prepaid-tokens?amount=1¤cy=usd' --max-amount 1000000 --jsoncurl "https://api.apify.com/v2/acts/myagizm~linkedin-jobs-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer $PREPAID_TOKEN" -H 'Content-Type: application/json' -d '{INPUT}'
之所以可用:本工具采用按事件计费且以受限权限运行,这正是 x402 的两个前提条件。按结果计费,代理只为拿到的数据付费;预付令牌本身就是消费上限,购买后 14 天到期。
免责声明
本工具为独立第三方工具,与 LinkedIn / 微软 无任何隶属、认可或赞助关系,所有商标归各自所有者。
本 Actor 只采集公开可见的数据,不登录、不绕过访问控制、不获取私密内容。数据使用的合规责任由使用者承担。
相关搜索
linkedin 职位抓取 · 招聘信息采集 · linkedin jobs api · 远程岗位抓取 · 招聘数据导出 csv · 人才市场研究 · 自动投递数据源 · x402 支付 · ai 代理抓取 · usdc 付费 api