LinkedIn Learning Courses Scraper avatar

LinkedIn Learning Courses Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
LinkedIn Learning Courses Scraper

LinkedIn Learning Courses Scraper

Scrape LinkedIn Learning course catalog - search by keyword or skill category and return courses with title, instructor, duration, skill level, skills taught, and more. No login required.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 hours ago

Last modified

Share

Search the LinkedIn Learning course catalog by keyword and extract structured data about courses, learning paths, and videos — no login or subscription required.

What it scrapes

  • Course title and direct URL
  • Instructor name
  • Duration (seconds + human-readable, e.g. "2h 15m")
  • Difficulty level (Beginner / Intermediate / Advanced)
  • Skills taught (array of skill names)
  • Description (course overview text)
  • Asset type (Course / Learning Path / Video)
  • Scraped timestamp

Input

FieldTypeRequiredDefaultDescription
searchQuerystringYes"Python machine learning"Keyword or skill to search for
maxResultsintegerNo50Maximum courses to return (1–500)
difficultyLevelenumNoAll levelsFilter by BEGINNER / INTERMEDIATE / ADVANCED
assetTypeenumNoCOURSECOURSE, LEARNING_PATH, or VIDEO
sortByenumNoRELEVANCERELEVANCE or RECENCY
proxyConfigurationobjectNoOptional Apify proxy settings

Example input

{
"searchQuery": "Python machine learning",
"maxResults": 50,
"difficultyLevel": "BEGINNER",
"assetType": "COURSE",
"sortBy": "RELEVANCE"
}

Output

Each scraped record looks like:

{
"courseId": "123456",
"courseUrl": "https://www.linkedin.com/learning/python-for-data-science/",
"title": "Python for Data Science",
"instructorName": "Joe Smith",
"durationSeconds": 7200,
"durationFormatted": "2h",
"difficultyLevel": "BEGINNER",
"skills": ["Python", "Data Science", "Pandas"],
"description": "Learn Python for data science workflows including data manipulation and visualization.",
"assetType": "COURSE",
"scrapedAt": "2024-01-15T12:00:00+00:00"
}

Output fields

FieldTypeDescription
courseIdstringUnique course identifier extracted from the LinkedIn URN
courseUrlstringDirect URL to the course on LinkedIn Learning
titlestringFull course title
instructorNamestringPrimary instructor or content creator
durationSecondsintegerTotal course duration in seconds
durationFormattedstringHuman-readable duration (e.g. "2h 15m", "45m")
difficultyLevelstringBEGINNER, INTERMEDIATE, or ADVANCED
skillsarrayList of skill names the course teaches
descriptionstringCourse overview / description
assetTypestringCOURSE, LEARNING_PATH, or VIDEO
scrapedAtstringISO 8601 timestamp when the record was scraped

Fields that cannot be populated for a given course are omitted (no null values).

Use cases

  • Skill gap analysis — find what topics and technologies are covered by popular LinkedIn Learning courses
  • Content research — survey what instructors and courses exist in a domain
  • Learning recommendation systems — build datasets of course metadata for recommendation engines
  • Competitive intelligence — monitor the LinkedIn Learning catalog for a skill category

Limitations

  • LinkedIn Learning does not expose enrollment counts or ratings in the public search API; those fields are not included
  • Course descriptions and skill tags depend on how the course was catalogued by LinkedIn
  • Results may vary slightly by geographic region
  • maxResults is capped at 500 per run

FAQs

Does this require a LinkedIn account or login? No. The scraper uses LinkedIn Learning's public search endpoint which does not require authentication.

Does it need a subscription to LinkedIn Learning? No. Course catalog metadata is publicly accessible without a subscription.

Why are some courses missing descriptions or instructor names? Some newer or partner-contributed courses may have incomplete metadata on LinkedIn's end. The scraper only outputs fields that are actually populated.

Can I filter by topic or category? Use the searchQuery field with specific topic keywords (e.g. "project management", "data analysis", "React.js"). Combine with difficultyLevel for more targeted results.

What is a Learning Path? A Learning Path is a curated sequence of courses on LinkedIn Learning. Set assetType to LEARNING_PATH to search specifically for these.

How many results can I get? Up to 500 courses per run. For broader research, run multiple searches with different keywords and deduplicate by courseId.

Explore the rest of the LinkedIn suite

Need a different LinkedIn surface? Pair this actor with any of the others in the LinkedIn Suite — all published under the same publisher and built to share the same cookie format and output conventions.

ActorWhat it scrapes
LinkedIn Comments ScraperAll comments + reply threads on a post
LinkedIn Company Employees ScraperEmployee list for any company (by URN)
LinkedIn Company Info ScraperCompany About page (size, HQ, industry, specialties)
LinkedIn Company Posts ScraperPosts published from a company page
LinkedIn Events ScraperEvents by keyword/URL with full event detail
LinkedIn Hashtag Posts ScraperPosts ranked under a #hashtag
LinkedIn Jobs ScraperJob listings via the public jobs-guest API
LinkedIn Jobs Scraper UltraSame as jobs-scraper + full detail enrichment
LinkedIn People Search ScraperPeople search with every LinkedIn facet (role, company, school, location, etc.)
LinkedIn Post Reactions ScraperReactors on a post (name, headline, reaction type)
LinkedIn Post ScraperFull post (text, media, engagement counts, author)
LinkedIn Post Search ScraperPosts matching a keyword (with date/author/network filters)
LinkedIn Profile Posts ScraperAll posts/reposts/articles for one profile
LinkedIn Profile ScraperPublic profile fields (name, headline, positions, education, skills)
LinkedIn Profile Scraper ProProfile fields + extras (recommendations, organizations, languages)
LinkedIn Profile Scraper Pro UltraPro + premium fields (contact info, followers list when allowed)
LinkedIn Profile Scraper UltraProfile + the full upstream dash-120 surface
LinkedIn Profile Search by NameSearch profiles by person name (great for matching CSVs of names)
LinkedIn Schools Alumni ScraperAlumni list for any LinkedIn school page
LinkedIn Top Content ScraperTrending / top-engagement posts by topic
LinkedIn User Activity ScraperReactions + comments + posts feed for one profile

All actors share the same cookie input format (plain li_at OR full cookies JSON array) and the same omit-empty output convention.