diff --git a/haruhi_dl/extractor/extractors.py b/haruhi_dl/extractor/extractors.py index 61eda1707..a89b2b27a 100644 --- a/haruhi_dl/extractor/extractors.py +++ b/haruhi_dl/extractor/extractors.py @@ -403,6 +403,13 @@ from .frontendmasters import ( ) from .funimation import FunimationIE from .funk import FunkIE +from .funkwhale import ( + FunkwhaleAlbumSHIE, + FunkwhaleArtistSHIE, + FunkwhaleChannelSHIE, + FunkwhalePlaylistSHIE, + FunkwhaleTrackSHIE, +) from .fusion import FusionIE from .fxnetworks import FXNetworksIE from .gaia import GaiaIE diff --git a/haruhi_dl/extractor/funkwhale.py b/haruhi_dl/extractor/funkwhale.py new file mode 100644 index 000000000..1dfc0d134 --- /dev/null +++ b/haruhi_dl/extractor/funkwhale.py @@ -0,0 +1,300 @@ +# coding: utf-8 +from __future__ import unicode_literals + +from .common import SelfhostedInfoExtractor +from ..utils import ( + compat_str, + compat_urllib_parse_urlencode, + try_get, + parse_iso8601, +) + + +class FunkwhaleBaseExtractor(SelfhostedInfoExtractor): + _SH_VALID_CONTENT_STRINGS = ( + "