diff --git a/src/you_get/downloader/__init__.py b/src/you_get/downloader/__init__.py index 9be7e3d6..d941f3a0 100644 --- a/src/you_get/downloader/__init__.py +++ b/src/you_get/downloader/__init__.py @@ -39,5 +39,6 @@ from .yinyuetai import * from .youku import * from .youtube import * from .ted import * +from .khan import * from .__main__ import * diff --git a/src/you_get/downloader/__main__.py b/src/you_get/downloader/__main__.py index 64d7c73b..6d7eaa2a 100644 --- a/src/you_get/downloader/__main__.py +++ b/src/you_get/downloader/__main__.py @@ -60,6 +60,7 @@ def url_to_module(url): 'youtu': youtube, 'youtube': youtube, 'ted': ted, + 'khanacademy': khan, #TODO } if k in downloads: diff --git a/src/you_get/downloader/khan.py b/src/you_get/downloader/khan.py new file mode 100644 index 00000000..9c4bb40d --- /dev/null +++ b/src/you_get/downloader/khan.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python + +__all__ = ['khan_download'] + +from ..common import * +from .youtube import youtube_download_by_id + +def khan_download(url, output_dir = '.', merge = True, info_only = False): + page = get_html(url) + id = page[page.find('src="https://www.youtube.com/embed/') + len('src="https://www.youtube.com/embed/') :page.find('?enablejsapi=1&wmode=transparent&modestbranding=1&rel=0&fs=1&showinfo=0')] + youtube_download_by_id(id) + +site_info = "khanacademy.org" +download = khan_download +download_playlist = playlist_not_supported('khan')