Teachable Scraper - Pay Per Result avatar

Teachable Scraper - Pay Per Result

Pricing

from $3.80 / 1,000 results

Go to Apify Store
Teachable Scraper - Pay Per Result

Teachable Scraper - Pay Per Result

Pay-per-result Teachable scraper. Only pay for data you get! Extract titles, prices, students, reviews, instructor profiles, curriculum, sales pages and testimonials from any Teachable school including custom domains.

Pricing

from $3.80 / 1,000 results

Rating

0.0

(0)

Developer

SilentFlow

SilentFlow

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

by SilentFlow

Only pay for what you get. No compute costs, no proxy fees, no surprises. Just results.

Why Pay Per Result?

Traditional ScraperPay Per Result
Pay for compute timePay only for data
Proxy costs extraProxies included
Failed runs cost moneyNo charge if it fails
Unpredictable costsKnow exactly what you'll pay

What you get

Every course includes 30+ data points:

{
"title": "Complete Python Masterclass",
"slug": "complete-python-masterclass",
"url": "https://school.teachable.com/p/complete-python-masterclass",
"description": "Learn Python from scratch with hands-on projects...",
"price": 197.00,
"originalPrice": 497.00,
"currency": "USD",
"isFree": false,
"studentsCount": 12450,
"reviewsCount": 342,
"averageRating": 4.8,
"lessonsCount": 156,
"category": "Programming",
"instructorName": "John Smith",
"instructorBio": "Senior Python developer with 15 years of experience...",
"instructorAvatar": "https://...",
"thumbnail": "https://...",
"curriculum": [
{
"title": "Getting Started",
"lectures": [
{ "title": "Welcome", "type": "video", "duration": "5:30" }
]
}
],
"testimonials": [
{
"author": "Jane Doe",
"content": "This course changed my career...",
"rating": 5.0
}
],
"schoolName": "Python Academy",
"schoolUrl": "https://school.teachable.com",
"scrapedAt": "2024-06-01T12:00:00Z"
}

Input parameters

Required (one of these)

ParameterTypeDescription
schoolUrlsarrayTeachable school URLs to scrape all courses
courseUrlsarrayDirect URLs to specific course pages

Options

ParameterTypeDefaultDescription
scrapeDetailsbooleantrueGet full course data (descriptions, curriculum, reviews)
scrapeSalesPagebooleanfalseExtract full sales page content
maxItemsinteger100Maximum courses to return

Examples

Scrape a Teachable school

{
"schoolUrls": [
{ "url": "https://myschool.teachable.com" }
],
"scrapeDetails": true,
"maxItems": 50
}

Get specific courses

{
"courseUrls": [
{ "url": "https://school.teachable.com/p/python-course" },
{ "url": "https://school.teachable.com/p/javascript-course" }
],
"scrapeDetails": true
}

Quick overview (fast, no details)

{
"schoolUrls": [
{ "url": "https://school.teachable.com" }
],
"scrapeDetails": false,
"maxItems": 200
}

Integrations

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("silentflow/teachable-scraper-ppr").call(run_input={
"schoolUrls": [{"url": "https://school.teachable.com"}],
"scrapeDetails": True,
"maxItems": 50
})
for course in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{course['title']}: ${course['price']}")

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('silentflow/teachable-scraper-ppr').call({
schoolUrls: [{ url: 'https://school.teachable.com' }],
scrapeDetails: true,
maxItems: 50
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} courses`);

Tips for best results

  1. Use maxItems wisely: Only request what you need
  2. Disable details for speed: scrapeDetails: false is much faster
  3. Custom domains work: Use any Teachable school URL
  4. Test first: Try with maxItems: 3 to verify your setup works

FAQ

Q: What if no courses are found? A: You pay nothing. Only successful results are charged.

Q: What if the run fails? A: You pay nothing. Failed runs don't charge you.

Q: Is there a minimum charge? A: No minimum. Get 1 course = pay for 1 course.

Q: Are proxy costs included? A: Yes! Proxies are included in the per-result price.

Q: Can I scrape any Teachable school? A: Yes, both *.teachable.com subdomains and custom domains are supported.

Q: Does it access gated/paid content? A: No, only publicly available course information from sales pages.

When to use PPR vs Standard

Use PPR when...Use Standard when...
You need predictable costsYou're scraping thousands of courses
You want guaranteed resultsYou have Apify compute credits
You're testing or prototypingYou're running scheduled jobs
Budget is per-result focusedBudget is time-based

Data fields

CategoryFields
Coursetitle, slug, url, description, shortDescription
Pricingprice, originalPrice, currency, isFree
StatsstudentsCount, reviewsCount, averageRating, lessonsCount
Categorycategory, subCategory, tags
InstructorinstructorName, instructorBio, instructorAvatar, instructorTitle
Mediathumbnail, promoVideo, images
Curriculumsections with lectures (title, type, duration)
Reviewstestimonials with author, content, rating
SchoolschoolName, schoolUrl
Metaid, scrapedAt

Support

Need help? We're here for you:

  • Feature requests: Let us know what you need
  • Custom solutions: Contact us for enterprise integrations or high-volume needs

Check out our other scrapers: SilentFlow on Apify


Remember: You only pay for results. No results = no charge.