|
|
@ -97,7 +97,7 @@ class MixcloudIE(InfoExtractor): |
|
|
|
view_count = str_to_int(self._search_regex( |
|
|
|
[r'<meta itemprop="interactionCount" content="UserPlays:([0-9]+)"', |
|
|
|
r'/listeners/?">([0-9,.]+)</a>', |
|
|
|
r'm-tooltip=["\']([\d,.]+) plays'], |
|
|
|
r'(?:m|data)-tooltip=["\']([\d,.]+) plays'], |
|
|
|
webpage, 'play count', default=None)) |
|
|
|
|
|
|
|
return { |
|
|
@ -143,7 +143,7 @@ class MixcloudPlaylistBaseIE(InfoExtractor): |
|
|
|
|
|
|
|
|
|
|
|
class MixcloudUserIE(MixcloudPlaylistBaseIE): |
|
|
|
_VALID_URL = r'^(?:https?://)?(?:www\.)?mixcloud\.com/(?P<user>[^/]+)/(?P<type>uploads|favorites|listens)?/?$' |
|
|
|
_VALID_URL = r'https?://(?:www\.)?mixcloud\.com/(?P<user>[^/]+)/(?P<type>uploads|favorites|listens)?/?$' |
|
|
|
IE_NAME = 'mixcloud:user' |
|
|
|
|
|
|
|
_TESTS = [{ |
|
|
@ -216,7 +216,7 @@ class MixcloudUserIE(MixcloudPlaylistBaseIE): |
|
|
|
|
|
|
|
|
|
|
|
class MixcloudPlaylistIE(MixcloudPlaylistBaseIE): |
|
|
|
_VALID_URL = r'^(?:https?://)?(?:www\.)?mixcloud\.com/(?P<user>[^/]+)/playlists/(?P<playlist>[^/]+)/?$' |
|
|
|
_VALID_URL = r'https?://(?:www\.)?mixcloud\.com/(?P<user>[^/]+)/playlists/(?P<playlist>[^/]+)/?$' |
|
|
|
IE_NAME = 'mixcloud:playlist' |
|
|
|
|
|
|
|
_TESTS = [{ |
|
|
@ -259,7 +259,7 @@ class MixcloudPlaylistIE(MixcloudPlaylistBaseIE): |
|
|
|
|
|
|
|
|
|
|
|
class MixcloudStreamIE(MixcloudPlaylistBaseIE): |
|
|
|
_VALID_URL = r'^(?:https?://)?(?:www\.)?mixcloud\.com/(?P<id>[^/]+)/stream/?$' |
|
|
|
_VALID_URL = r'https?://(?:www\.)?mixcloud\.com/(?P<id>[^/]+)/stream/?$' |
|
|
|
IE_NAME = 'mixcloud:stream' |
|
|
|
|
|
|
|
_TEST = { |
|
|
|