-class ZingMp3AlbumIE(ZingMp3BaseInfoExtractor):
- _VALID_URL = r'https?://mp3\.zing\.vn/(?:album|playlist)/(?P<slug>[^/]+)/(?P<album_id>\w+)\.html'
- _TESTS = [
- {
- 'url': 'http://mp3.zing.vn/album/Lau-Dai-Tinh-Ai-Bang-Kieu-Minh-Tuyet/ZWZBWDAF.html',
- 'info_dict': {
- '_type': 'playlist',
- 'id': 'ZWZBWDAF',
- 'title': 'Lâu Đài Tình Ái - Bằng Kiều ft. Minh Tuyết | Album 320 lossless',
- },
- 'playlist_count': 10,
- },
- {
- 'url': 'http://mp3.zing.vn/playlist/Duong-Hong-Loan-apollobee/IWCAACCB.html',
- 'only_matching': True,
- }
- ]
- IE_NAME = 'zingmp3:album'
- IE_DESC = 'mp3.zing.vn albums'
-
- def _real_extract(self, url):
- matched = re.match(self._VALID_URL, url)
- slug = matched.group('slug')
- album_id = matched.group('album_id')
-
- webpage = self._download_webpage(
- 'http://mp3.zing.vn/album/%s/%s.html' % (slug, album_id), album_id)
- player_xml_url = self._search_regex(
- r'&xmlURL=(?P<xml_url>[^&]+)&', webpage, 'player xml url')
-
- return self._extract_player_xml(
- player_xml_url, album_id,
- playlist_title=self._og_search_title(webpage))