summaryrefslogtreecommitdiffstats
path: root/pyload/plugins/hoster/SoundcloudCom.py
diff options
context:
space:
mode:
authorGravatar Walter Purcaro <vuolter@gmail.com> 2014-12-13 15:56:57 +0100
committerGravatar Walter Purcaro <vuolter@gmail.com> 2014-12-13 15:56:57 +0100
commitacc46fc3497a66a427b795b4a22c6e71d69185a1 (patch)
tree2d315b838a76435fc456b972c99c28d1732b2f70 /pyload/plugins/hoster/SoundcloudCom.py
parentCode fixes (diff)
downloadpyload-acc46fc3497a66a427b795b4a22c6e71d69185a1.tar.xz
Update
Diffstat (limited to 'pyload/plugins/hoster/SoundcloudCom.py')
-rw-r--r--pyload/plugins/hoster/SoundcloudCom.py57
1 files changed, 0 insertions, 57 deletions
diff --git a/pyload/plugins/hoster/SoundcloudCom.py b/pyload/plugins/hoster/SoundcloudCom.py
deleted file mode 100644
index 0934a2d76..000000000
--- a/pyload/plugins/hoster/SoundcloudCom.py
+++ /dev/null
@@ -1,57 +0,0 @@
-# -*- coding: utf-8 -*-
-
-import pycurl
-import re
-
-from pyload.plugins.Hoster import Hoster
-
-
-class SoundcloudCom(Hoster):
- __name = "SoundcloudCom"
- __type = "hoster"
- __version = "0.10"
-
- __pattern = r'https?://(?:www\.)?soundcloud\.com/(?P<UID>.*?)/(?P<SID>.*)'
-
- __description = """SoundCloud.com hoster plugin"""
- __license = "GPLv3"
- __authors = [("Peekayy", "peekayy.dev@gmail.com")]
-
-
- def process(self, pyfile):
- # default UserAgent of HTTPRequest fails for this hoster so we use this one
- self.req.http.c.setopt(pycurl.USERAGENT, 'Mozilla/5.0')
- page = self.load(pyfile.url)
- m = re.search(r'<div class="haudio.*?large.*?" data-sc-track="(?P<ID>\d*)"', page)
- songId = clientId = ""
- if m:
- songId = m.group("ID")
- if len(songId) <= 0:
- self.logError(_("Could not find song id"))
- self.offline()
- else:
- m = re.search(r'"clientID":"(?P<CID>.*?)"', page)
- if m:
- clientId = m.group("CID")
-
- if len(clientId) <= 0:
- clientId = "b45b1aa10f1ac2941910a7f0d10f8e28"
-
- m = re.search(r'<em itemprop="name">\s(?P<TITLE>.*?)\s</em>', page)
- if m:
- pyfile.name = m.group("TITLE") + ".mp3"
- else:
- pyfile.name = re.match(self.__pattern, pyfile.url).group("SID") + ".mp3"
-
- # url to retrieve the actual song url
- page = self.load("https://api.sndcdn.com/i1/tracks/%s/streams" % songId, get={"client_id": clientId})
- # getting streams
- # for now we choose the first stream found in all cases
- # it could be improved if relevant for this hoster
- streams = [
- (result.group("QUALITY"), result.group("URL"))
- for result in re.finditer(r'"(?P<QUALITY>.*?)":"(?P<URL>.*?)"', page)
- ]
- self.logDebug("Found Streams", streams)
- self.logDebug("Downloading", streams[0][0], streams[0][1])
- self.download(streams[0][1])