Merge remote-tracking branch 'r4mos/master'
authorPhilipp Hagemeister <phihag@phihag.de>
Tue, 16 Sep 2014 21:33:26 +0000 (23:33 +0200)
committerPhilipp Hagemeister <phihag@phihag.de>
Tue, 16 Sep 2014 21:33:26 +0000 (23:33 +0200)
youtube_dl/__init__.py
youtube_dl/extractor/allmyvideos.py

index 871ddead9e83ee2de91713b4b1a0828b21d96450..a8d5095aeba0faed0b0464d82198663efc7dc77c 100644 (file)
@@ -76,6 +76,7 @@ __authors__  = (
     'Aaron McDaniel (mcd1992)',
     'Magnus Kolstad',
     'Hari Padmanaban',
+    'Carlos Ramos',
 )
 
 __license__ = 'Public Domain'
index a5ebdfdf4da82813cf0a00364f78b1f401ec2ebd..e6c60e7e46e3c2b4752f1c72ad7374df10ee616a 100644 (file)
@@ -1,6 +1,7 @@
 # coding: utf-8
 from __future__ import unicode_literals
 
+import os.path
 import re
 
 from .common import InfoExtractor
@@ -30,22 +31,29 @@ class AllmyvideosIE(InfoExtractor):
 
         orig_webpage = self._download_webpage(url, video_id)
         fields = re.findall(r'type="hidden" name="(.+?)"\s* value="?(.+?)">', orig_webpage)
-        data = {}
-        for name, value in fields:
-            data[name] = value
+        data = dict(fields)
 
         post = compat_urllib_parse.urlencode(data)
         headers = {
             b'Content-Type': b'application/x-www-form-urlencoded',
         }
         req = compat_urllib_request.Request(url, post, headers)
-        webpage = self._download_webpage(req, video_id, note='Downloading video page ...')
+        webpage = self._download_webpage(
+            req, video_id, note='Downloading video page ...')
+
+        title = os.path.splitext(data['fname'])[0]
 
         #Could be several links with different quality
         links = re.findall(r'"file" : "?(.+?)",', webpage)
+        # Assume the links are ordered in quality
+        formats = [{
+            'url': l,
+            'quality': i,
+        } for i, l in enumerate(links)]
+        self._sort_formats(formats)
 
         return {
             'id': video_id,
-            'title': data['fname'][:len(data['fname'])-4],  #Remove .mp4 extension
-            'url': links[len(links)-1]                      #Choose the higher quality link
-        }
\ No newline at end of file
+            'title': title,
+            'formats': formats,
+        }