[imgut:album] Add extractor (Closes #6711)
This commit is contained in:
		@@ -241,7 +241,10 @@ from .imdb import (
 | 
			
		||||
    ImdbIE,
 | 
			
		||||
    ImdbListIE
 | 
			
		||||
)
 | 
			
		||||
from .imgur import ImgurIE
 | 
			
		||||
from .imgur import (
 | 
			
		||||
    ImgurIE,
 | 
			
		||||
    ImgurAlbumIE,
 | 
			
		||||
)
 | 
			
		||||
from .ina import InaIE
 | 
			
		||||
from .indavideo import (
 | 
			
		||||
    IndavideoIE,
 | 
			
		||||
 
 | 
			
		||||
@@ -13,7 +13,7 @@ from ..utils import (
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ImgurIE(InfoExtractor):
 | 
			
		||||
    _VALID_URL = r'https?://(?:i\.)?imgur\.com/(?P<id>[a-zA-Z0-9]+)'
 | 
			
		||||
    _VALID_URL = r'https?://(?:i\.)?imgur\.com/(?!gallery)(?P<id>[a-zA-Z0-9]+)'
 | 
			
		||||
 | 
			
		||||
    _TESTS = [{
 | 
			
		||||
        'url': 'https://i.imgur.com/A61SaA1.gifv',
 | 
			
		||||
@@ -97,3 +97,28 @@ class ImgurIE(InfoExtractor):
 | 
			
		||||
            'description': self._og_search_description(webpage),
 | 
			
		||||
            'title': self._og_search_title(webpage),
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ImgurAlbumIE(InfoExtractor):
 | 
			
		||||
    _VALID_URL = r'https?://(?:i\.)?imgur\.com/gallery/(?P<id>[a-zA-Z0-9]+)'
 | 
			
		||||
 | 
			
		||||
    _TEST = {
 | 
			
		||||
        'url': 'http://imgur.com/gallery/Q95ko',
 | 
			
		||||
        'info_dict': {
 | 
			
		||||
            'id': 'Q95ko',
 | 
			
		||||
        },
 | 
			
		||||
        'playlist_count': 25,
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    def _real_extract(self, url):
 | 
			
		||||
        album_id = self._match_id(url)
 | 
			
		||||
 | 
			
		||||
        album_images = self._download_json(
 | 
			
		||||
            'http://imgur.com/gallery/%s/album_images/hit.json?all=true' % album_id,
 | 
			
		||||
            album_id)['data']['images']
 | 
			
		||||
 | 
			
		||||
        entries = [
 | 
			
		||||
            self.url_result('http://imgur.com/%s' % image['hash'])
 | 
			
		||||
            for image in album_images if image.get('hash')]
 | 
			
		||||
 | 
			
		||||
        return self.playlist_result(entries, album_id)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user