Add support for MediaFire document viewer URLs

develop
Sven Slootweg 12 years ago
parent 20cc22caa7
commit e71af14d94

@ -31,7 +31,7 @@ def resolve(url):
elif re.match("https?:\/\/(www\.)?pastebin\.com\/[a-zA-Z0-9]+", url) is not None: elif re.match("https?:\/\/(www\.)?pastebin\.com\/[a-zA-Z0-9]+", url) is not None:
task = resolvers.PastebinTask(url) task = resolvers.PastebinTask(url)
return task.run() return task.run()
elif re.match("https?:\/\/(www\.)?mediafire\.com\/\?[a-z0-9]+", url) is not None: elif re.match("https?:\/\/(www\.)?mediafire\.com\/(view\/)?\?[a-z0-9]+", url) is not None:
task = resolvers.MediafireTask(url) task = resolvers.MediafireTask(url)
return task.run() return task.run()
else: else:

@ -9,6 +9,17 @@ class MediafireTask(Task):
author_url = "http://cryto.net/~joepie91" author_url = "http://cryto.net/~joepie91"
def run(self): def run(self):
url_match = re.match("(https?):\/\/(www\.)?mediafire\.com\/view\/\?([a-z0-9]+)", self.url)
if url_match is not None:
self.url = "%s://%smediafire.com/?%s" % url_match.groups(1)
url_match = re.match("(https?):\/\/(www\.)?mediafire\.com\/\?([a-z0-9]+)", self.url)
if url_match is None:
self.state = "invalid"
raise ResolverError("The specified URL is not a valid MediaFire URL.")
try: try:
contents = self.fetch_page(self.url) contents = self.fetch_page(self.url)
except urllib2.URLError, e: except urllib2.URLError, e:

@ -19,7 +19,8 @@ suites = {
}, },
'mediafire': { 'mediafire': {
"MediaFire": "http://www.mediafire.com/?vxltbkr2l9ycmah", "MediaFire": "http://www.mediafire.com/?vxltbkr2l9ycmah",
"MediaFire with password (mfddl)": "http://www.mediafire.com/?traa1p0lki9611h" "MediaFire with password (mfddl)": "http://www.mediafire.com/?traa1p0lki9611h",
'MediaFire Document Viewer': "http://www.mediafire.com/view/?vxltbkr2l9ycmah"
}, },
'youtube': { 'youtube': {
"YouTube": "http://www.youtube.com/watch?v=XSGBVzeBUbk" "YouTube": "http://www.youtube.com/watch?v=XSGBVzeBUbk"

Loading…
Cancel
Save