Udemy Course Scraper π
Pricing
from $1.00 / 1,000 results
Udemy Course Scraper π
Extract comprehensive course data from Udemy with ease. Scrape course titles, instructors, ratings, reviews, prices, discounts, duration, curriculum, last updated date, language, enrollment count, and more. Perfect for market research, price tracking, analysis, and educational data collection.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Shahid Irfan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
What does Udemy Course Scraper do?
Udemy Course Scraper collects structured course data from Udemy search results. Add a Udemy search URL or a keyword, choose how many courses you want, and the Actor returns course titles, URLs, instructors, prices, ratings, review counts, images, duration, lectures, levels, badges, and learning outcomes.
Use it for course market research, competitor tracking, pricing analysis, content catalog building, learning trend monitoring, and AI or RAG workflows that need clean Udemy course datasets.
Why use Udemy Course Scraper?
- Course search datasets - Build structured datasets from Udemy keyword, search, topic, category, or course-style URLs.
- Clean output - Empty and unavailable values are omitted instead of saved as null fields.
- Pricing coverage - Collect current price, discount price, list price, amount, and currency when available.
- Pagination support - Control result count, page size, and page caps for small tests or larger exports.
- Automation-ready data - Export to JSON, CSV, Excel, XML, Google Sheets, webhooks, or your own API workflow.
What data can you extract from Udemy?
| Field | Description |
|---|---|
course_id | Numeric Udemy course ID |
title | Course title |
headline | Course headline or subtitle |
course_url | Direct Udemy course URL |
enroll_url | Course enrollment URL when available |
learn_url | Course learning URL when available |
image_url | Main course image URL |
thumbnail_url | Smaller course thumbnail URL |
instructors | Instructor names |
instructor_ids | Udemy instructor IDs |
rating | Average course rating |
reviews_count | Number of ratings or reviews |
is_free | Whether the course is free |
price | Current displayed price |
price_amount | Numeric current price amount |
currency | Price currency |
list_price | Listed price before discount |
list_price_amount | Numeric list price |
discount_price | Discount price string |
duration_seconds | Course duration in seconds |
lectures_count | Number of lectures |
practice_test_questions_count | Number of practice test questions |
level | Course level |
locale | Course locale |
updated_on | Last update date shown for the course |
badges | Course badges such as bestseller labels |
learning_outcomes | Published learning outcomes |
is_practice_test_course | Whether the result is a practice-test course |
is_google_partner_collection | Google partner collection flag when available |
career_accelerator_ids | Related career accelerator IDs when available |
curriculum_match_titles | Matching curriculum item titles when available |
search_keyword | Keyword used for the search |
search_page | Search page where the course was found |
source | Source platform name |
scraped_at | Timestamp for when the record was collected |
How to use Udemy Course Scraper
- Open the Actor on Apify.
- Enter a Udemy URL in
startUrlor add a search term inkeyword. - Set
results_wantedandmax_pages. - Choose a sort order if needed.
- Run the Actor and download the dataset.
If both startUrl and keyword are provided, keyword is used for the search.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startUrl | String | No | https://www.udemy.com/courses/search/?src=ukw&q=python | Udemy search, topic, category, or course URL |
keyword | String | No | - | Search keyword. Takes priority over the URL keyword |
results_wanted | Integer | No | 20 | Maximum number of courses to save |
max_pages | Integer | No | 5 | Maximum search result pages to request |
sort_order | String | No | relevance | Sort order: relevance, reviews, or rating |
proxyConfiguration | Object | No | { "useApifyProxy": false } | Optional proxy settings for cloud runs |
Output Data
| Field | Type | Description |
|---|---|---|
course_id | Integer | Numeric Udemy course ID |
title | String | Course title |
headline | String | Course headline |
course_url | String | Direct course URL |
image_url | String | Course image URL |
instructors | Array | Instructor names |
rating | Number | Average course rating |
reviews_count | Integer | Number of ratings or reviews |
price | String | Current displayed price |
currency | String | Price currency |
list_price | String | Listed price before discount |
duration_seconds | Integer | Course duration in seconds |
lectures_count | Integer | Number of lectures |
practice_test_questions_count | Integer | Number of practice test questions |
level | String | Course level |
updated_on | String | Last course update date |
badges | Array | Course badges |
learning_outcomes | Array | Published learning outcomes |
search_keyword | String | Keyword used for the search |
search_page | Integer | Search page where the course was found |
source | String | Source platform |
scraped_at | String | Collection timestamp |
Usage Examples
Keyword Search
Collect the first 20 Udemy courses for a keyword:
{"keyword": "python","results_wanted": 20,"max_pages": 5,"sort_order": "relevance"}
Search URL
Use a Udemy search URL directly:
{"startUrl": "https://www.udemy.com/courses/search/?src=ukw&q=data%20science","results_wanted": 50,"max_pages": 5}
Topic or Category URL
Use a Udemy topic or category-style URL and let the Actor extract the search term:
{"startUrl": "https://www.udemy.com/topic/python/","results_wanted": 100,"max_pages": 10,"sort_order": "reviews"}
Sample Output
{"course_id": 2776760,"title": "100 Days of Code: The Complete Python Pro Bootcamp","headline": "Master Python by building 100 projects in 100 days. Learn data science, automation, build websites, games and apps!","course_url": "https://www.udemy.com/course/100-days-of-code","image_url": "https://img-c.udemycdn.com/course/480x270/2776760_f176_10.jpg","instructors": ["Dr. Angela Yu, Developer and Lead Instructor"],"rating": 4.6663103103637695,"reviews_count": 432124,"price": "$9.99","price_amount": 9.99,"currency": "USD","list_price": "$59.99","list_price_amount": 59.99,"duration_seconds": 204484,"lectures_count": 604,"level": "ALL_LEVELS","updated_on": "2026-06-12","badges": ["Bestseller"],"search_keyword": "python","search_page": 1,"source": "Udemy","scraped_at": "2026-08-04T09:55:00.000Z"}
Tips for Best Results
- Use a specific keyword such as
python,data science,excel, orproject management. - Start with
results_wantedset to20for a quick test run. - Increase
max_pageswhen requesting more results than one search page can return. - Use
reviewswhen you want established courses with larger review counts. - Use
ratingwhen you want highly rated course results. - Check the dataset preview before scheduling large recurring runs.
Integrations
- Google Sheets - Send Udemy course data to spreadsheets.
- Webhooks - Trigger downstream workflows after each run.
- Make or Zapier - Connect course datasets to no-code automations.
- API access - Retrieve datasets from your own applications.
- CSV and Excel exports - Download course data for analysis and reporting.
Frequently Asked Questions
Can I scrape Udemy courses by keyword?
Yes. Add a keyword such as python, excel, or machine learning, and the Actor will collect matching Udemy course results.
Can I use a Udemy URL instead of a keyword?
Yes. You can use a Udemy search URL, topic URL, category-style URL, or course-style URL. When a keyword is also provided, the keyword takes priority.
Does the output include prices?
Yes. The dataset includes current price, list price, discount price, amount, and currency when Udemy publishes those values for the course.
Why are some fields missing?
Some Udemy courses do not publish every field. The Actor omits empty values instead of saving nulls.
Can I run this Actor on a schedule?
Yes. Apify schedules can run the Actor hourly, daily, weekly, or at another interval for course monitoring.
Can I export Udemy course data to CSV or Excel?
Yes. Apify datasets can be exported to CSV, Excel, JSON, XML, RSS, and other supported formats.
Is it legal to scrape Udemy courses?
Scraping public web data can be legal, but you are responsible for complying with applicable laws, Udemy's terms, privacy rules, and your intended use of the data.
Related Actors
Support
For issues, feature requests, or custom Actor work, use the Issues tab on the Actor page or contact the developer through Apify.
Legal Notice
This Actor is designed for legitimate collection of publicly available Udemy course data. Do not use it to collect private information, bypass access controls, spam Udemy, or violate applicable terms or laws.