From a52c50e8aaa880daa2f71f9dd6a862ffcaf78c81 Mon Sep 17 00:00:00 2001 From: Mort Yao Date: Sun, 18 Oct 2015 06:03:27 +0200 Subject: [PATCH] [heavymusic] new site support --- src/you_get/common.py | 2 ++ src/you_get/extractors/__init__.py | 1 + src/you_get/extractors/heavymusic.py | 23 +++++++++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 src/you_get/extractors/heavymusic.py diff --git a/src/you_get/common.py b/src/you_get/common.py index d8c5fa24..f5b28e4a 100755 --- a/src/you_get/common.py +++ b/src/you_get/common.py @@ -1034,6 +1034,7 @@ def url_to_module(url): freesound, funshion, google, + heavymusic, ifeng, instagram, iqilu, @@ -1117,6 +1118,7 @@ def url_to_module(url): 'freesound': freesound, 'fun': funshion, 'google': google, + 'heavy-music': heavymusic, 'iask': sina, 'ifeng': ifeng, 'in': alive, diff --git a/src/you_get/extractors/__init__.py b/src/you_get/extractors/__init__.py index 099c8dcf..2a46d6cd 100755 --- a/src/you_get/extractors/__init__.py +++ b/src/you_get/extractors/__init__.py @@ -20,6 +20,7 @@ from .flickr import * from .freesound import * from .funshion import * from .google import * +from .heavymusic import * from .ifeng import * from .instagram import * from .iqilu import * diff --git a/src/you_get/extractors/heavymusic.py b/src/you_get/extractors/heavymusic.py new file mode 100644 index 00000000..c4ced08e --- /dev/null +++ b/src/you_get/extractors/heavymusic.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +__all__ = ['heavymusic_download'] + +from ..common import * + +def heavymusic_download(url, output_dir='.', merge=True, info_only=False, **kwargs): + html = get_html(url) + tracks = re.findall(r'href="(online2\.php[^"]+)"', html) + for track in tracks: + band = r1(r'band=([^&]*)', track) + album = r1(r'album=([^&]*)', track) + title = r1(r'track=([^&]*)', track) + file_url = 'http://www.heavy-music.ru/online2.php?band=%s&album=%s&track=%s' % (parse.quote(band), parse.quote(album), parse.quote(title)) + _, _, size = url_info(file_url) + + print_info(site_info, title, 'mp3', size) + if not info_only: + download_urls([file_url], title[:-4], 'mp3', size, output_dir, merge=merge) + +site_info = "heavy-music.ru" +download = heavymusic_download +download_playlist = heavymusic_download