about summary refs log tree commit diff
path: root/youtube_dl/extractor/mixcloud.py
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2015-01-30 23:21:44 +0600
committerSergey M․ <dstftw@gmail.com>2015-01-30 23:21:44 +0600
commitb80505a40938444c6f7b0b80c445cc0726c39bb7 (patch)
treed1448748e49aae17c90c014bfd7b4e21101022a1 /youtube_dl/extractor/mixcloud.py
parente4c17d7274235ec880857d7691bc7c818e2c7a01 (diff)
downloadyoutube-dl-b80505a40938444c6f7b0b80c445cc0726c39bb7.tar.gz
youtube-dl-b80505a40938444c6f7b0b80c445cc0726c39bb7.tar.xz
youtube-dl-b80505a40938444c6f7b0b80c445cc0726c39bb7.zip
[mixcloud] Fix extraction (Closes #4784)
Diffstat (limited to 'youtube_dl/extractor/mixcloud.py')
-rw-r--r--youtube_dl/extractor/mixcloud.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/youtube_dl/extractor/mixcloud.py b/youtube_dl/extractor/mixcloud.py
index 07d194562..162046fe6 100644
--- a/youtube_dl/extractor/mixcloud.py
+++ b/youtube_dl/extractor/mixcloud.py
@@ -10,6 +10,7 @@ from ..utils import (
     ExtractorError,
     HEADRequest,
     int_or_none,
+    str_to_int,
     parse_iso8601,
 )
 
@@ -85,15 +86,17 @@ class MixcloudIE(InfoExtractor):
         uploader_id = self._search_regex(
             r'\s+"profile": "([^"]+)",', webpage, 'uploader id', fatal=False)
         description = self._og_search_description(webpage)
-        like_count = int_or_none(self._search_regex(
-            r'<meta itemprop="interactionCount" content="UserLikes:([0-9]+)"',
+        like_count = str_to_int(self._search_regex(
+            [r'<meta itemprop="interactionCount" content="UserLikes:([0-9]+)"',
+             r'/favorites/?">([0-9]+)<'],
             webpage, 'like count', fatal=False))
-        view_count = int_or_none(self._search_regex(
-            r'<meta itemprop="interactionCount" content="UserPlays:([0-9]+)"',
+        view_count = str_to_int(self._search_regex(
+            [r'<meta itemprop="interactionCount" content="UserPlays:([0-9]+)"',
+             r'/listeners/?">([0-9,.]+)</a>'],
             webpage, 'play count', fatal=False))
         timestamp = parse_iso8601(self._search_regex(
             r'<time itemprop="dateCreated" datetime="([^"]+)">',
-            webpage, 'upload date'))
+            webpage, 'upload date', default=None))
 
         return {
             'id': track_id,