LinkedIn Profile Search Scraper
Pricing
from $0.00005 / actor start
LinkedIn Profile Search Scraper
Find and extract publicly available LinkedIn profile data from Google search results. This Actor searches Google for LinkedIn profiles using targeted queries and returns profile URLs, names, job titles, companies, and location snippets.
Pricing
from $0.00005 / actor start
Rating
5.0
(6)
Developer
Akash Kumar Naik
Maintained by CommunityActor stats
4
Bookmarked
865
Total users
81
Monthly active users
2 days ago
Last modified
Categories
Share
LinkedIn Profile Search Scraper is an Apify Actor that finds and extracts publicly available LinkedIn profile data from Google search results. Search by job title, location, company, or skills and get profile URLs, names, job titles, companies, and location snippets — without ever logging into LinkedIn. When Google blocks a request, the Actor retries that page through DuckDuckGo.
What Is LinkedIn Profile Search Scraper?
This Actor helps you discover LinkedIn profiles without accessing LinkedIn directly. It uses Google search with site:linkedin.com/in queries and falls back to DuckDuckGo only when Google blocks a page. Results are saved to the default dataset in JSON format and can be exported as JSON, CSV, Excel, or HTML.
Key Features
- Profile Discovery: Find LinkedIn profiles by job title, location, company, or skills
- Public Data Only: Extracts only publicly available information from Google search results
- Automatic site: Operator: No
site:linkedin.com/inneeded — the Actor adds it automatically - Pay-Per-Event Pricing: Pay only for profiles successfully scraped and saved
- Multi-Page Support: Scrape up to 20 pages of Google results (~200 profiles)
- Global Search: Route searches through different country domains for localized results
- Deduplication: Automatically removes duplicate profiles across pages
Supported Search Parameters
- Google-only results from
google.<tld>/searchresult blocks, with/gotoredirect tokens resolved automatically - Country-specific Google domains:
us→ google.com,in→ google.co.in,uk→ google.co.uk, and more - Up to 20 result pages per run (~10 results per page)
- Exact-phrase queries with quotes, plus
AND/ORcombinations
Use Cases
| Use Case | Example Query |
|---|---|
| Recruiting | site:linkedin.com/in "software engineer" "San Francisco" |
| Lead Generation | site:linkedin.com/in marketing director "New York" |
| Market Research | site:linkedin.com/in founder startup |
| Networking | site:linkedin.com/in "data scientist" healthcare |
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | — | Keywords to search for LinkedIn profiles (no site: operator needed — the Actor adds site:linkedin.com/in automatically) |
maxPages | integer | No | 1 | Maximum number of result pages to scrape (1-20, ~10 results per page) |
countryCode | string | No | us | Google domain + gl param (e.g., us → google.com, in → google.co.in, uk → google.co.uk) |
proxyConfiguration | object | No | GOOGLE_SERP | Apify proxy settings — the GOOGLE_SERP group is the default and required for Google |
Query examples:
site:linkedin.com/in software engineer "San Francisco"site:linkedin.com/in "product manager" fintechsite:linkedin.com/in director site:linkedin.com/in amazon OR googlesite:linkedin.com/in nurse "Los Angeles"site:linkedin.com/in founder "venture capital"
💡 Tip: Use quotes for exact phrase matching. Combine with
AND/ORfor complex queries.
Sample Output
{"title": "John Smith - Software Engineer at Google","profileUrl": "https://www.linkedin.com/in/johnsmith","description": "Software Engineer at Google | Ex-Amazon | San Francisco Bay Area","displayUrl": "https://www.linkedin.com/in/johnsmith","position": 1,"sourceUrl": "https://www.google.com/search?q=site%3Alinkedin.com%2Fin+software+engineer","scrapedAt": "2026-04-23T12:52:01.394Z"}
Dataset Fields
| Field | Type | Description |
|---|---|---|
title | string | Profile name and headline from search result |
profileUrl | string | Direct LinkedIn profile URL (linkedin.com/in/...) |
description | string | Profile snippet (job title, company, location) |
displayUrl | string | URL shown in search results |
position | integer | Result position on the page (1-based) |
sourceUrl | string | Google search page URL |
scrapedAt | string | ISO timestamp |
How to Use LinkedIn Profile Search Scraper
- Open the Actor page on Apify Store.
- Enter your search terms (e.g.,
"software engineer" "San Francisco"). - Set
maxPages(start with 1 to preview results; each page yields ~10 profiles). - Choose a
countryCodeto target specific regions. - Run the Actor and export results as JSON, CSV, Excel, or HTML.
Optimize Your Queries
- Use quotes for exact matches:
"software engineer" - Include location for targeted results:
"San Francisco"or"London" - Filter by company:
site:linkedin.com/in engineer Google - Combine terms with
AND/OR:site:linkedin.com/in (engineer OR developer)
Control Costs
- Start with
maxPages: 1to preview results - Each page yields ~10 profiles; set
maxPagesbased on your needs - Use
countryCodeto target specific regions and improve relevance
Connect via API
cURL:
curl -X POST "https://api.apify.com/v2/acts/akash9078/linkedin-profile-search-scraper/runs" \-H "Authorization: Bearer YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"query": "software engineer", "maxPages": 1, "countryCode": "us"}'
Python with the Apify Client:
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("akash9078/linkedin-profile-search-scraper").call(run_input={"query": "software engineer", "maxPages": 1, "countryCode": "us"})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
Node.js with the Apify Client:
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('akash9078/linkedin-profile-search-scraper').call({query: 'software engineer',maxPages: 1,countryCode: 'us',});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Pricing
This Actor uses Pay-Per-Event (PPE) pricing:
| Event | Price | Description |
|---|---|---|
| Actor Start | $0.00005 | One-time fee per Actor run |
Profile Scraped (PROFILE_SCRAPED) | $0.01 | Per profile saved to dataset (1 event = 1 dataset item) |
Example: Scraping 50 profiles costs approximately $0.50 (plus the start fee). Estimated cost: 100 profiles ≈ $1.00, 1,000 profiles ≈ $10.00.
Set a maximum spending limit in the Actor console to control your budget.
Why Use LinkedIn Profile Search Scraper?
Sourcing profiles by hand means hundreds of manual Google searches, copy-pasting URLs, and deduplication — and LinkedIn blocks most direct scraping approaches outright. This Actor works entirely from public Google search results, auto-resolves redirects, dedupes pages, and retries blocked pages through DuckDuckGo, so a 20-page prospecting sweep is a single scheduled run.
Limitations
- This Actor extracts publicly available data only from Google search results
- It does not log into LinkedIn or access private profile information
- Results depend on Google's indexing and may not include all LinkedIn profiles
- Google may occasionally block or rate-limit requests; the Actor retries automatically (blocked pages fall back to DuckDuckGo)
FAQ
Does the Actor log into LinkedIn?
No. The Actor never accesses LinkedIn directly — it extracts publicly available data from Google search results, with a DuckDuckGo fallback when Google blocks a page.
What data do I get for each profile?
Title (name and headline), direct profile URL, a description snippet (job title, company, location), display URL, result position, the source search URL, and a timestamp.
Why do some results have empty descriptions?
Not all profiles have rich descriptions in Google search results — descriptions depend on what Google indexes from the profile. Some results may show "No description available" if the snippet is empty.
How many profiles can I get per run?
Up to 20 pages with ~10 results per page (~200 profiles), with duplicates removed automatically across pages.
How do I target a specific country?
Set countryCode to route the search through a local Google domain (e.g., in for google.co.in, uk for google.co.uk) and improve relevance.
Support
- Documentation: Apify Platform Docs
- Issues: Report via the Actor's Issues tab in Apify Store
- Email: support@apify.com
Related Actors
If you need more people and company data from Apify, check out my other Apify Actors:
- Google SERP Scraper
- Google News Scraper
- Import Export Leads Finder
- Forbes Real-Time Billionaires Scraper
Built and maintained by akash9078 on the Apify platform.