diff options
Diffstat (limited to 'pyload/plugin/crypter/GooGl.py')
-rw-r--r-- | pyload/plugin/crypter/GooGl.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/pyload/plugin/crypter/GooGl.py b/pyload/plugin/crypter/GooGl.py new file mode 100644 index 000000000..552a9ea01 --- /dev/null +++ b/pyload/plugin/crypter/GooGl.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- + +from pyload.plugin.Crypter import Crypter +from pyload.utils import json_loads + + +class GooGl(Crypter): + __name = "GooGl" + __type = "crypter" + __version = "0.01" + + __pattern = r'https?://(?:www\.)?goo\.gl/\w+' + __config = [("use_subfolder" , "bool", "Save package to subfolder" , True), + ("subfolder_per_pack", "bool", "Create a subfolder for each package", True)] + + __description = """Goo.gl decrypter plugin""" + __license = "GPLv3" + __authors = [("stickell", "l.stickell@yahoo.it")] + + + API_URL = "https://www.googleapis.com/urlshortener/v1/url" + + + def decrypt(self, pyfile): + rep = self.load(self.API_URL, get={'shortUrl': pyfile.url}) + self.logDebug("JSON data: " + rep) + rep = json_loads(rep) + + if 'longUrl' in rep: + self.urls = [rep['longUrl']] + else: + self.fail(_("Unable to expand shortened link")) |