-Added errorhandling for filetram fixes #4560

-Fixed irfree fixes #4558
-Improved ivpaste fixes #4562
-Deleted lecture2go, whoever still wants to have that has to make a hosterplugin, decrypter is not possible for that fixes #4563
-Fixed klipsiz fixes #4569
-upload24.net: RIP
-Added peeje handling for password protected links, maindomain is now peejeshare

git-svn-id: svn://svn.jdownloader.org/jdownloader/trunk@16291 ebf7c1c2-ba36-0410-9fe8-c592906822b4
This commit is contained in:
psp 2012-04-07 20:14:35 +00:00
parent 9d9d56a0dc
commit 1b9ffd5c9f
9 changed files with 70 additions and 231 deletions

View File

@ -739,4 +739,6 @@ jd/plugins/decrypter/Mp3Lnkrg.class
jd/plugins/hoster/FilesNambaKz.class
jd/plugins/decrypter/GmdMscCm.class
jd/plugins/decrypter/CrptTo.class
jd/captcha/methods/cryptt
jd/captcha/methods/cryptt
jd/plugins/decrypter/Lctr2GoUHH.class
jd/plugins/hoster/Upload24Net.class

View File

@ -39,9 +39,13 @@ public class FileTramCom extends PluginForDecrypt {
String parameter = param.toString();
br.setFollowRedirects(false);
br.getPage(parameter);
if (br.getRedirectLocation() != null) {
if (br.getRedirectLocation() != null && !br.getRedirectLocation().matches("http://(www\\.)?filetram\\.com/download/.+")) {
decryptedLinks.add(createDownloadlink(br.getRedirectLocation()));
} else {
if (br.containsHTML("(>Not Found<|The requested URL was not found on this server)")) {
logger.info("Link offline: " + parameter);
return decryptedLinks;
}
String fpName = br.getRegex("<h1 class=\"title\">(.*?)</h1>").getMatch(0);
if (fpName == null) fpName = br.getRegex("<title>(.*?) \\- [A-Za-z0-9\\-]+ download</title>").getMatch(0);
String textArea = br.getRegex("id=\"copy\\-links\" class=\"select\\-content\" wrap=\"off\">(.*?)</textarea>").getMatch(0);

View File

@ -25,11 +25,9 @@ import jd.controlling.ProgressController;
import jd.parser.Regex;
import jd.parser.html.HTMLParser;
import jd.plugins.CryptedLink;
import jd.plugins.DecrypterException;
import jd.plugins.DecrypterPlugin;
import jd.plugins.DownloadLink;
import jd.plugins.PluginForDecrypt;
import jd.utils.locale.JDL;
@DecrypterPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "irfree.com" }, urls = { "http://(www\\.)?irfree\\.(com|eu)(/.+/.*)" }, flags = { 0 })
public class IrfreeCm extends PluginForDecrypt {
@ -38,19 +36,18 @@ public class IrfreeCm extends PluginForDecrypt {
super(wrapper);
}
// Most of the code done by user "garciamax"
// http://board.jdownloader.org/member.php?u=43543
public ArrayList<DownloadLink> decryptIt(CryptedLink param, ProgressController progress) throws Exception {
ArrayList<DownloadLink> decryptedLinks = new ArrayList<DownloadLink>();
ArrayList<String> passwords;
br.setFollowRedirects(true);
String parameter = param.toString().replace("irfree.eu", "irfree.com");
String parameter = param.toString().replace("irfree.eu/", "irfree.com/");
br.getPage(parameter);
if (br.containsHTML("(>We\\'re sorry \\- that page was not found \\(Error 404\\)<|<title>Nothing found for)")) throw new DecrypterException(JDL.L("plugins.decrypt.errormsg.unavailable", "Perhaps wrong URL or the download is not available anymore."));
String content = br.getRegex(Pattern.compile("<div class=\"entry\">(.*?)<div align=\"center\">", Pattern.CASE_INSENSITIVE | Pattern.DOTALL)).getMatch(0);
if (content == null) return null;
passwords = HTMLParser.findPasswords(content);
String[] links = new Regex(content, "<a href=\"(http://.*?)\"", Pattern.CASE_INSENSITIVE).getColumn(0);
if (br.containsHTML("(The article cannot be found\\.|>Ooops, Error\\!<)")) {
logger.info("Link offline: " + parameter);
return decryptedLinks;
}
passwords = HTMLParser.findPasswords(br.toString());
String[] links = new Regex(br.toString(), "<a href=\"(http://.*?)\"", Pattern.CASE_INSENSITIVE).getColumn(0);
if (links == null || links.length == 0) return null;
for (String link : links) {
if (!new Regex(link, this.getSupportedLinks()).matches() && DistributeData.hasPluginFor(link, true)) {

View File

@ -21,6 +21,7 @@ import java.util.ArrayList;
import jd.PluginWrapper;
import jd.controlling.ProgressController;
import jd.parser.Regex;
import jd.plugins.CryptedLink;
import jd.plugins.DecrypterException;
import jd.plugins.DecrypterPlugin;
@ -29,9 +30,8 @@ import jd.plugins.PluginForDecrypt;
import jd.plugins.PluginForHost;
import jd.plugins.hoster.DirectHTTP;
import jd.utils.JDUtilities;
import jd.utils.locale.JDL;
@DecrypterPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "ivpaste.com" }, urls = { "http://(www\\.)?ivpaste\\.com/v/[A-Za-z0-9]+" }, flags = { 0 })
@DecrypterPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "ivpaste.com" }, urls = { "http://(www\\.)?ivpaste\\.com/(v/|view\\.php\\?id=)[A-Za-z0-9]+" }, flags = { 0 })
public class IvPasteCom extends PluginForDecrypt {
public IvPasteCom(PluginWrapper wrapper) {
@ -44,7 +44,11 @@ public class IvPasteCom extends PluginForDecrypt {
ArrayList<DownloadLink> decryptedLinks = new ArrayList<DownloadLink>();
String parameter = param.toString();
br.getPage(parameter);
if (br.containsHTML("NO Existe\\!")) throw new DecrypterException(JDL.L("plugins.decrypt.errormsg.unavailable", "Perhaps wrong URL or the download is not available anymore."));
br.getPage("http://ivpaste.com/p/" + new Regex(parameter, "ivpaste\\.com/(v/|view\\.php\\?id=)([A-Za-z0-9]+)").getMatch(1));
if (br.containsHTML("<b>Acceda desde: <a")) {
logger.info("Link offline: " + parameter);
return decryptedLinks;
}
if (br.containsHTML("api\\.recaptcha\\.net") || br.containsHTML("google\\.com/recaptcha/api/")) {
boolean failed = true;
for (int i = 0; i <= 5; i++) {
@ -64,11 +68,11 @@ public class IvPasteCom extends PluginForDecrypt {
}
if (failed) throw new DecrypterException(DecrypterException.CAPTCHA);
}
br.getPage(parameter.replace("/v/", "/p/"));
String[] links = br.getRegex("<a href=\"(.*?)\"").getColumn(0);
if (links == null || links.length == 0) return null;
for (String dl : links)
decryptedLinks.add(createDownloadlink(dl));
for (String dl : links) {
if (!dl.matches("http://(www\\.)?ivpaste\\.com/(v/|view\\.php\\?id=)[A-Za-z0-9]+")) decryptedLinks.add(createDownloadlink(dl));
}
return decryptedLinks;
}

View File

@ -1,39 +0,0 @@
package jd.plugins.decrypter;
import java.util.ArrayList;
import jd.PluginWrapper;
import jd.controlling.ProgressController;
import jd.plugins.CryptedLink;
import jd.plugins.DecrypterPlugin;
import jd.plugins.DownloadLink;
import jd.plugins.PluginForDecrypt;
/**
* {@link DecrypterPlugin} zum parsen von Veranstaltungsseiten on
* http://lecture2go.uni-hamburg.de
*
* @author stonedsquirrel
* @version 14.04.2011
*/
@DecrypterPlugin(flags = { 0 }, interfaceVersion = 2, names = { "lecture2go.uni-hamburg.de" }, revision = "$Revision$", urls = { "http://lecture2go\\.uni-hamburg\\.de/veranstaltungen/-/v/[0-9]*" })
public class Lctr2GoUHH extends PluginForDecrypt {
public Lctr2GoUHH(PluginWrapper wrapper) {
super(wrapper);
}
@Override
public ArrayList<DownloadLink> decryptIt(CryptedLink parameter, ProgressController progress) throws Exception {
br.getPage(parameter.getCryptedUrl());
String url = br.getRegex("(http://lecture2go\\.uni-hamburg\\.de/videorep/.*?\\.jpg)").getMatch(0);
if (url != null) {
url = url.replaceAll("\\.jpg", ".mp4");
} else {
return null;
}
ArrayList<DownloadLink> links = new ArrayList<DownloadLink>();
links.add(createDownloadlink("directhttp://" + url));
return links;
}
}

View File

@ -22,7 +22,6 @@ import java.util.regex.Pattern;
import jd.PluginWrapper;
import jd.controlling.ProgressController;
import jd.nutils.encoding.Encoding;
import jd.parser.Regex;
import jd.plugins.CryptedLink;
import jd.plugins.DecrypterException;
import jd.plugins.DecrypterPlugin;
@ -31,7 +30,7 @@ import jd.plugins.FilePackage;
import jd.plugins.PluginForDecrypt;
import jd.utils.locale.JDL;
@DecrypterPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "klipsiz.org" }, urls = { "http://(www\\.)?klipsiz\\.(net|org)/(([a-zA-Z0-9-.]+|[a-z]{1}/[0-9]+)\\.php|mp3-dinle-indir/[0-9]+-[0-9]+/)" }, flags = { 0 })
@DecrypterPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "klipsiz.org" }, urls = { "http://(www\\.)?klipsiz\\.(net|org)/(?!index\\.php|radyo\\-listeleri\\.php)(([a-zA-Z0-9-.]+|[a-z]{1}/[0-9]+)\\.php|mp3-dinle-indir/[0-9]+-[0-9]+/)" }, flags = { 0 })
public class LlpszNt extends PluginForDecrypt {
public LlpszNt(PluginWrapper wrapper) {
@ -46,57 +45,29 @@ public class LlpszNt extends PluginForDecrypt {
br.setFollowRedirects(false);
br.getPage(parameter);
if (br.getRedirectLocation() != null && br.getRedirectLocation().equals("http://www.klipsiz.net") || br.containsHTML("(>404: Not Found<|<title>Bedava Yabancı Müzik Mp3 dinle indir şarkı sözü lyrics \\- klipsiz\\.org\\&nbsp;\\-\\&nbsp;Bedava Yabancı Müzik Mp3 dinle indir şarkı sözü lyrics \\- klipsiz\\.org</title>)")) throw new DecrypterException(JDL.L("plugins.decrypt.errormsg.unavailable", "Perhaps wrong URL or the download is not available anymore."));
if (Regex.matches(parameter, manylinks)) {
String fpName = br.getRegex("\"componentheading\">(.*?)</div>").getMatch(0);
if (fpName == null) {
fpName = br.getRegex("<title>(.*?)MP3\\'l").getMatch(0);
}
String[] links = br.getRegex("sectiontableentry.*?<a href=\"(.*?)\">").getColumn(0);
String[] links = br.getRegex("<p class=\"MsoNormal\"><strong><a href=\"([^<>\"/]*?)\"").getColumn(0);
if (links != null && links.length != 0) {
final String fpName = br.getRegex("<h1 style=\"float:left;\">([^<>\"]*?)</h1>").getMatch(0);
if (links.length == 0) {
logger.warning("Decrypter broken for link: " + parameter);
return null;
}
progress.setRange(links.length);
for (String cryptedlink : links) {
br.getPage(cryptedlink);
String decryptedlink = br.getRegex("addVariable\\(\\'file\\'.*?(http.*?)\\'\\)").getMatch(0);
if (decryptedlink == null) decryptedlink = br.getRegex("width=\\'28px\\' align=\\'right\\'><a href=\"(.*?)\"").getMatch(0);
if (decryptedlink == null) {
br.getPage("http://www.klipsiz.org/" + cryptedlink);
String finallink = decryptSingleLink();
if (finallink == null) {
logger.warning("Decrypter broken for link: " + parameter);
return null;
}
if (decryptedlink.equals("")) throw new DecrypterException(JDL.L("plugins.decrypt.errormsg.unavailable", "Perhaps wrong URL or the download is not available anymore."));
decryptedlink = Encoding.urlDecode((decryptedlink), true);
br.getPage(decryptedlink);
String finallink = br.getRedirectLocation();
if (finallink != null && finallink.contains("wrzuta.pl/sr")) {
br.getPage(finallink);
finallink = br.getRedirectLocation();
}
if (br.containsHTML("Nie odnaleziono pliku")) {
logger.warning("Found 1 offline link");
} else if (finallink == null) {
logger.warning("Decrypter broken for link: " + parameter);
return null;
} else {
decryptedLinks.add(createDownloadlink("directhttp://" + finallink));
progress.increase(1);
}
decryptedLinks.add(createDownloadlink(finallink));
}
if (fpName != null) {
FilePackage fp = FilePackage.getInstance();
fp.setName(fpName.trim());
fp.setName(Encoding.htmlDecode(fpName.trim()));
fp.addLinks(decryptedLinks);
}
} else {
String finallink = br.getRegex("<param name=\"zrodlo\" value=\"(.*?)\">").getMatch(0);
if (finallink == null) {
logger.warning("Decrypter broken for link: " + parameter);
return null;
}
if (finallink.equals("")) throw new DecrypterException(JDL.L("plugins.decrypt.errormsg.unavailable", "Perhaps wrong URL or the download is not available anymore."));
finallink = Encoding.urlDecode((finallink), true);
String finallink = decryptSingleLink();
if (finallink == null) {
logger.warning("Decrypter broken for link: " + parameter);
return null;
@ -106,4 +77,9 @@ public class LlpszNt extends PluginForDecrypt {
return decryptedLinks;
}
private String decryptSingleLink() {
String finallink = br.getRegex("<param name=\"zrodlo\" value=\"(http://[^<>\"]*?)\"").getMatch(0);
if (finallink != null) finallink = Encoding.urlDecode((finallink), true);
return finallink;
}
}

View File

@ -34,14 +34,14 @@ import jd.plugins.PluginForHost;
*/
/* Set interfaceVersion to 3 to avoid old Stable trying to load this Plugin */
@HostPlugin(revision = "$Revision: 15297 $", interfaceVersion = 3, names = { "files.namba.kz", "datumbit.com", "fik1.com", "fileape.com", "filezzz.com", "imagewaste.com", "fyels.com", "gotupload.com", "sharehub.com", "sharehut.com", "filesurf.ru", "openfile.ru", "letitfile.ru", "tab.net.ua", "uploadbox.com", "supashare.net", "usershare.net", "skipfile.com", "10upload.com", "x7.to", "multiupload.com", "uploadking.com", "uploadhere.com", "fileshaker.com", "vistaupload.com", "groovefile.com", "enterupload.com", "xshareware.com", "xun6.com", "yourupload.de", "youshare.eu", "mafiaupload.com", "addat.hu", "archiv.to", "bigupload.com", "biggerupload.com", "bitload.com", "bufiles.com", "cash-file.net", "combozip.com", "duckload.com", "exoshare.com", "file2upload.net", "filebase.to", "filebling.com", "filecrown.com", "filefrog.to", "filefront.com", "filehook.com", "filestage.to", "filezup.com",
"fullshare.net", "gaiafile.com", "keepfile.com", "kewlshare.com", "lizshare.net", "loaded.it", "loadfiles.in", "megarapid.eu", "megashare.vn", "metahyper.com", "missupload.com", "netstorer.com", "nextgenvidz.com", "piggyshare.com", "profitupload.com", "quickload.to", "quickyshare.com", "share.cx", "sharehoster.de", "shareua.com", "speedload.to", "upfile.in", "ugotfile.com", "upload.ge", "uploadmachine.com", "uploady.to", "uploadstore.net", "vspace.cc", "web-share.net", "yvh.cc", "x-files.kz" }, urls = { "http://(www\\.)?download\\.files\\.namba\\.kz/files/\\d+", "http://(www\\.)?datumbit\\.com/file/.*?/", "http://(www\\.)?fik1\\.com/[a-z0-9]{12}", "http://(www\\.)?fileape\\.com/(index\\.php\\?act=download\\&id=|dl/)\\w+", "http://(www\\.)?filezzz\\.com/download/[0-9]+/", "http://(www\\.)?imagewaste\\.com/pictures/\\d+/.{1}", "http://(www\\.)?fyels\\.com/[A-Za-z0-9]+",
"http://(www\\.)?gotupload\\.com/[a-z0-9]{12}", "http://(go.sharehub.com|sharehub.me|follow.to|kgt.com|krt.com)/.*", "http://(www\\.)?sharehut\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?(filesurf|4ppl|files\\.youmama)\\.ru/[0-9]+", "http://[\\w\\.]*?openfile\\.ru/[0-9]+", "http://[\\w\\.]*?letitfile\\.(ru|com)/download/id\\d+", "http://[\\w\\.]*?tab\\.net\\.ua/sites/files/site_name\\..*?/id\\.\\d+/", "http://[\\w\\.]*?uploadbox\\.com/.*?files/[0-9a-zA-Z]+", "http://(www\\.)?supashare\\.net/[a-z0-9]{12}", "https?://(www\\.)?usershare\\.net/[a-z0-9]{12}", "http://(www\\.)?skipfile\\.com/[a-z0-9]{12}", "http://(www\\.)?10upload\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?x7\\.to/(?!list)[a-zA-Z0-9]+(/(?!inList)[^/\r\n]+)?", "http://(www\\.)?multiuploaddecrypted\\.com/([A-Z0-9]{2}_[A-Z0-9]+|[0-9A-Z]+)", "http://(www\\.)?uploadking\\.com/[A-Z0-9]+",
"http://(www\\.)?uploadhere\\.com/[A-Z0-9]+", "http://[\\w\\.]*?fileshaker\\.com/.+", "http://(www\\.)?vistaupload\\.com/[a-z0-9]{12}", "https?://(www\\.)?groovefile\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?enterupload\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?xshareware\\.com/[\\w]+/.*", "http://[\\w\\.]*?xun6\\.(com|net)/file/[a-z0-9]+", "http://(www\\.)?yourupload\\.de/[a-z0-9]{12}", "http://(www\\.)?youshare\\.eu/[a-z0-9]{12}", "http://(www\\.)?mafiaupload\\.com/do\\.php\\?id=\\d+", "http://[\\w\\.]*?addat.hu/.+/.+", "http://(www\\.)?archiv\\.to/((\\?Module\\=Details\\&HashID\\=|GET/)FILE[A-Z0-9]+|view/divx/[a-z0-9]+)", "http://[\\w\\.]*?bigupload\\.com/(d=|files/)[A-Z0-9]+", "http://(www\\.)?biggerupload\\.com/[a-z0-9]{12}", "http://(www\\.)?(bitload\\.com/(f|d)/\\d+/[a-z0-9]+|mystream\\.to/file-\\d+-[a-z0-9]+)", "https?://(www\\.)?bufiles\\.com/[a-z0-9]{12}",
"http://(www\\.)?cash-file\\.(com|net)/[a-z0-9]{12}", "http://[\\w\\.]*?combozip\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?(duckload\\.com|youload\\.to)/(download/[a-z0-9]+|(divx|play)/[A-Z0-9\\.-]+|[a-zA-Z0-9\\.]+)", "http://(www\\.)?exoshare\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?file2upload\\.(net|com)/download/[0-9]+/", "http://[\\w\\.]*?filebase\\.to/(files|download)/\\d{1,}/.*", "http://[\\w\\.]*?filebling\\.com/[a-z0-9]{12}", "http://(www\\.)?filecrown\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?filefrog\\.to/download/\\d+/[a-zA-Z0-9]+", "http://[\\w\\.]*?filefront\\.com/[0-9]+", "http://(www\\.)?filehook\\.com/[a-z0-9]{12}", "http://(www\\.)?filestage\\.to/watch/[a-z0-9]+/", "http://(www\\.)?(filezup|divxupfile)\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?fullshare\\.net/show/[a-z0-9]+/.+", "http://(www\\.)?gaiafile\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?keepfile\\.com/[a-z0-9]{12}",
"http://[\\w\\.]*?kewlshare\\.com/dl/[\\w]+/", "http://[\\w\\.]*?lizshare\\.net/[a-z0-9]{12}", "http://(www\\.)?loaded\\.it/(show/[a-z0-9]+/[A-Za-z0-9_\\-% \\.]+|(flash|divx)/[a-z0-9]+/)", "http://[\\w\\.]*?loadfiles\\.in/[a-z0-9]{12}", "(http://[\\w\\.]*?megarapid\\.eu/files/\\d+/.+)|(http://[\\w\\.]*?megarapid\\.eu/\\?e=403\\&m=captcha\\&file=\\d+/.+)", "http://[\\w\\.]*?(megashare\\.vn/(download\\.php\\?uid=[0-9]+\\&id=[0-9]+|dl\\.php/\\d+)|share\\.megaplus\\.vn/dl\\.php/\\d+)", "http://(www\\.)?metahyper\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?missupload\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?netstorer\\.com/[a-zA-Z0-9]+/.+", "http://[\\w\\.]*?nextgenvidz\\.com/view/\\d+", "http://(www\\.)?piggyshare\\.com/file/[a-z0-9]+", "http://(www\\.)?profitupload\\.com/files/[A-Za-z0-9]+\\.html", "http://[\\w\\.]*?quickload\\.to/\\?Go=Player\\&HashID=FILE[A-Z0-9]+",
"http://[\\w\\.]*?quickyshare\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?share\\.cx/(files/)?\\d+", "http://[\\w\\.]*?sharehoster\\.(de|com|net)/(dl|wait|vid)/[a-z0-9]+", "http://[\\w\\.]*?shareua.com/get_file/.*?/\\d+", "http://[\\w\\.]*?speedload\\.to/FILE[A-Z0-9]+", "http://(www\\.)?upfile\\.in/[a-z0-9]{12}", "http://[\\w\\.]*?ugotfile.com/file/\\d+/.+", "http://[\\w\\.]*?upload\\.ge/((\\?d|download\\.php\\?id)=[A-Z0-9]+|((en|ru|fr|es)/)?file/[0-9]+/)", "http://[\\w\\.]*?uploadmachine\\.com/(download\\.php\\?id=[0-9]+&type=[0-9]{1}|file/[0-9]+/)", "http://[\\w\\.]*?uploady\\.to/dl/((\\?d|download\\.php\\?id)=[A-Z0-9]+|((en|ru|fr|es)/)?file/[0-9]+/)", "http://(www\\.)?uploadstore\\.net/[a-z0-9]{12}", "http://[\\w\\.]*?vspace\\.cc/file/[A-Z0-9]+\\.html", "http://[\\w\\.]*?web-share\\.net/download/file/item/.*?_[0-9]+", "http://(www\\.)?yvh\\.cc/video\\.php\\?file=[a-z0-9_]+",
"http://[\\w\\.]*?x-files\\.kz/[a-z0-9]+" }, flags = { 0 })
@HostPlugin(revision = "$Revision: 15297 $", interfaceVersion = 3, names = { "upload24.net", "files.namba.kz", "datumbit.com", "fik1.com", "fileape.com", "filezzz.com", "imagewaste.com", "fyels.com", "gotupload.com", "sharehub.com", "sharehut.com", "filesurf.ru", "openfile.ru", "letitfile.ru", "tab.net.ua", "uploadbox.com", "supashare.net", "usershare.net", "skipfile.com", "10upload.com", "x7.to", "multiupload.com", "uploadking.com", "uploadhere.com", "fileshaker.com", "vistaupload.com", "groovefile.com", "enterupload.com", "xshareware.com", "xun6.com", "yourupload.de", "youshare.eu", "mafiaupload.com", "addat.hu", "archiv.to", "bigupload.com", "biggerupload.com", "bitload.com", "bufiles.com", "cash-file.net", "combozip.com", "duckload.com", "exoshare.com", "file2upload.net", "filebase.to", "filebling.com", "filecrown.com", "filefrog.to", "filefront.com", "filehook.com", "filestage.to",
"filezup.com", "fullshare.net", "gaiafile.com", "keepfile.com", "kewlshare.com", "lizshare.net", "loaded.it", "loadfiles.in", "megarapid.eu", "megashare.vn", "metahyper.com", "missupload.com", "netstorer.com", "nextgenvidz.com", "piggyshare.com", "profitupload.com", "quickload.to", "quickyshare.com", "share.cx", "sharehoster.de", "shareua.com", "speedload.to", "upfile.in", "ugotfile.com", "upload.ge", "uploadmachine.com", "uploady.to", "uploadstore.net", "vspace.cc", "web-share.net", "yvh.cc", "x-files.kz" }, urls = { "http://(www\\.)?upload24\\.net/[a-z0-9]+\\.[a-z0-9]+", "http://(www\\.)?download\\.files\\.namba\\.kz/files/\\d+", "http://(www\\.)?datumbit\\.com/file/.*?/", "http://(www\\.)?fik1\\.com/[a-z0-9]{12}", "http://(www\\.)?fileape\\.com/(index\\.php\\?act=download\\&id=|dl/)\\w+", "http://(www\\.)?filezzz\\.com/download/[0-9]+/",
"http://(www\\.)?imagewaste\\.com/pictures/\\d+/.{1}", "http://(www\\.)?fyels\\.com/[A-Za-z0-9]+", "http://(www\\.)?gotupload\\.com/[a-z0-9]{12}", "http://(go.sharehub.com|sharehub.me|follow.to|kgt.com|krt.com)/.*", "http://(www\\.)?sharehut\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?(filesurf|4ppl|files\\.youmama)\\.ru/[0-9]+", "http://[\\w\\.]*?openfile\\.ru/[0-9]+", "http://[\\w\\.]*?letitfile\\.(ru|com)/download/id\\d+", "http://[\\w\\.]*?tab\\.net\\.ua/sites/files/site_name\\..*?/id\\.\\d+/", "http://[\\w\\.]*?uploadbox\\.com/.*?files/[0-9a-zA-Z]+", "http://(www\\.)?supashare\\.net/[a-z0-9]{12}", "https?://(www\\.)?usershare\\.net/[a-z0-9]{12}", "http://(www\\.)?skipfile\\.com/[a-z0-9]{12}", "http://(www\\.)?10upload\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?x7\\.to/(?!list)[a-zA-Z0-9]+(/(?!inList)[^/\r\n]+)?",
"http://(www\\.)?multiuploaddecrypted\\.com/([A-Z0-9]{2}_[A-Z0-9]+|[0-9A-Z]+)", "http://(www\\.)?uploadking\\.com/[A-Z0-9]+", "http://(www\\.)?uploadhere\\.com/[A-Z0-9]+", "http://[\\w\\.]*?fileshaker\\.com/.+", "http://(www\\.)?vistaupload\\.com/[a-z0-9]{12}", "https?://(www\\.)?groovefile\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?enterupload\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?xshareware\\.com/[\\w]+/.*", "http://[\\w\\.]*?xun6\\.(com|net)/file/[a-z0-9]+", "http://(www\\.)?yourupload\\.de/[a-z0-9]{12}", "http://(www\\.)?youshare\\.eu/[a-z0-9]{12}", "http://(www\\.)?mafiaupload\\.com/do\\.php\\?id=\\d+", "http://[\\w\\.]*?addat.hu/.+/.+", "http://(www\\.)?archiv\\.to/((\\?Module\\=Details\\&HashID\\=|GET/)FILE[A-Z0-9]+|view/divx/[a-z0-9]+)", "http://[\\w\\.]*?bigupload\\.com/(d=|files/)[A-Z0-9]+", "http://(www\\.)?biggerupload\\.com/[a-z0-9]{12}",
"http://(www\\.)?(bitload\\.com/(f|d)/\\d+/[a-z0-9]+|mystream\\.to/file-\\d+-[a-z0-9]+)", "https?://(www\\.)?bufiles\\.com/[a-z0-9]{12}", "http://(www\\.)?cash-file\\.(com|net)/[a-z0-9]{12}", "http://[\\w\\.]*?combozip\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?(duckload\\.com|youload\\.to)/(download/[a-z0-9]+|(divx|play)/[A-Z0-9\\.-]+|[a-zA-Z0-9\\.]+)", "http://(www\\.)?exoshare\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?file2upload\\.(net|com)/download/[0-9]+/", "http://[\\w\\.]*?filebase\\.to/(files|download)/\\d{1,}/.*", "http://[\\w\\.]*?filebling\\.com/[a-z0-9]{12}", "http://(www\\.)?filecrown\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?filefrog\\.to/download/\\d+/[a-zA-Z0-9]+", "http://[\\w\\.]*?filefront\\.com/[0-9]+", "http://(www\\.)?filehook\\.com/[a-z0-9]{12}", "http://(www\\.)?filestage\\.to/watch/[a-z0-9]+/", "http://(www\\.)?(filezup|divxupfile)\\.com/[a-z0-9]{12}",
"http://[\\w\\.]*?fullshare\\.net/show/[a-z0-9]+/.+", "http://(www\\.)?gaiafile\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?keepfile\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?kewlshare\\.com/dl/[\\w]+/", "http://[\\w\\.]*?lizshare\\.net/[a-z0-9]{12}", "http://(www\\.)?loaded\\.it/(show/[a-z0-9]+/[A-Za-z0-9_\\-% \\.]+|(flash|divx)/[a-z0-9]+/)", "http://[\\w\\.]*?loadfiles\\.in/[a-z0-9]{12}", "(http://[\\w\\.]*?megarapid\\.eu/files/\\d+/.+)|(http://[\\w\\.]*?megarapid\\.eu/\\?e=403\\&m=captcha\\&file=\\d+/.+)", "http://[\\w\\.]*?(megashare\\.vn/(download\\.php\\?uid=[0-9]+\\&id=[0-9]+|dl\\.php/\\d+)|share\\.megaplus\\.vn/dl\\.php/\\d+)", "http://(www\\.)?metahyper\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?missupload\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?netstorer\\.com/[a-zA-Z0-9]+/.+", "http://[\\w\\.]*?nextgenvidz\\.com/view/\\d+", "http://(www\\.)?piggyshare\\.com/file/[a-z0-9]+",
"http://(www\\.)?profitupload\\.com/files/[A-Za-z0-9]+\\.html", "http://[\\w\\.]*?quickload\\.to/\\?Go=Player\\&HashID=FILE[A-Z0-9]+", "http://[\\w\\.]*?quickyshare\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?share\\.cx/(files/)?\\d+", "http://[\\w\\.]*?sharehoster\\.(de|com|net)/(dl|wait|vid)/[a-z0-9]+", "http://[\\w\\.]*?shareua.com/get_file/.*?/\\d+", "http://[\\w\\.]*?speedload\\.to/FILE[A-Z0-9]+", "http://(www\\.)?upfile\\.in/[a-z0-9]{12}", "http://[\\w\\.]*?ugotfile.com/file/\\d+/.+", "http://[\\w\\.]*?upload\\.ge/((\\?d|download\\.php\\?id)=[A-Z0-9]+|((en|ru|fr|es)/)?file/[0-9]+/)", "http://[\\w\\.]*?uploadmachine\\.com/(download\\.php\\?id=[0-9]+&type=[0-9]{1}|file/[0-9]+/)", "http://[\\w\\.]*?uploady\\.to/dl/((\\?d|download\\.php\\?id)=[A-Z0-9]+|((en|ru|fr|es)/)?file/[0-9]+/)", "http://(www\\.)?uploadstore\\.net/[a-z0-9]{12}",
"http://[\\w\\.]*?vspace\\.cc/file/[A-Z0-9]+\\.html", "http://[\\w\\.]*?web-share\\.net/download/file/item/.*?_[0-9]+", "http://(www\\.)?yvh\\.cc/video\\.php\\?file=[a-z0-9_]+", "http://[\\w\\.]*?x-files\\.kz/[a-z0-9]+" }, flags = { 0 })
public class Offline extends PluginForHost {
public Offline(PluginWrapper wrapper) {

View File

@ -25,6 +25,7 @@ import jd.plugins.DownloadLink;
import jd.plugins.DownloadLink.AvailableStatus;
import jd.plugins.HostPlugin;
import jd.plugins.LinkStatus;
import jd.plugins.Plugin;
import jd.plugins.PluginException;
import jd.plugins.PluginForHost;
@ -42,7 +43,7 @@ public class PeeJeCom extends PluginForHost {
// avoid dupes across domains/url types.
@Override
public void correctDownloadLink(DownloadLink link) {
link.setUrlDownload(link.getDownloadURL().replaceAll("(www\\.)?peejeshare.com", "peeje.com").replace(".html", ""));
link.setUrlDownload(link.getDownloadURL().replaceAll("(www\\.)?peeje\\.com/", "peejeshare.com/").replace(".html", ""));
}
public PeeJeCom(PluginWrapper wrapper) {
@ -54,6 +55,8 @@ public class PeeJeCom extends PluginForHost {
return "http://www.peeje.com/terms";
}
private static final String PASSWORDTEXT = ">This file is password\\-protected";
@Override
public AvailableStatus requestFileInformation(DownloadLink link) throws IOException, PluginException {
this.setBrowserExclusive();
@ -61,10 +64,15 @@ public class PeeJeCom extends PluginForHost {
br.getPage(link.getDownloadURL());
if (br.containsHTML(">The file you requested does not exist")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
final Regex fileInfo = br.getRegex("<br />File information:<b> (.*?) \\- (\\d+.*?) </b>");
String filename = fileInfo.getMatch(0);
if (filename == null) filename = br.getRegex("<title>Download ([^<>\"/]+)</title>").getMatch(0);
String filesize = fileInfo.getMatch(1);
String filename = null;
if (br.containsHTML(PASSWORDTEXT)) {
filename = br.getRegex("var RELPATH = \"([^<>\"]*?)(\\.html)?\"").getMatch(0);
} else {
filename = fileInfo.getMatch(0);
if (filename == null) filename = br.getRegex("<title>Download ([^<>\"/]+)</title>").getMatch(0);
}
if (filename == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
String filesize = fileInfo.getMatch(1);
link.setName(Encoding.htmlDecode(filename.trim()));
if (filesize != null) link.setDownloadSize(SizeFormatter.getSize(filesize));
return AvailableStatus.TRUE;
@ -73,7 +81,15 @@ public class PeeJeCom extends PluginForHost {
@Override
public void handleFree(DownloadLink downloadLink) throws Exception, PluginException {
requestFileInformation(downloadLink);
br.postPage(br.getURL(), "securitytoken=guest&psw=&download=Create+Download+Link");
String passCode = downloadLink.getStringProperty("pass", null);
if (br.containsHTML(PASSWORDTEXT)) {
if (passCode == null) passCode = Plugin.getUserInput("Password?", downloadLink);
br.postPage(br.getURL(), "psw=" + Encoding.urlEncode(passCode) + "&securitytoken=guest&pswcheck=Click+here+to+continue");
if (br.containsHTML(">Invalid Password, please try again") || br.containsHTML(PASSWORDTEXT)) throw new PluginException(LinkStatus.ERROR_RETRY, "Wrong password entered");
} else {
passCode = "";
}
br.postPage(br.getURL(), "securitytoken=guest&psw=" + passCode + "&download=Create+Download+Link");
String dllink = br.getRegex("<a href=\"(https?://[^<>\"]*?)\"><b>Click here to Download</b>").getMatch(0);
if (dllink == null) dllink = br.getRegex("\"(https?://ww\\d+\\.peeje\\.com/dl/[^<>\"\\']*?)\"").getMatch(0);
if (dllink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
@ -82,6 +98,7 @@ public class PeeJeCom extends PluginForHost {
br.followConnection();
throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
}
if (passCode != null) downloadLink.setProperty("pass", passCode);
dl.startDownload();
}

View File

@ -1,122 +0,0 @@
//jDownloader - Downloadmanager
//Copyright (C) 2010 JD-Team support@jdownloader.org
//
//This program is free software: you can redistribute it and/or modify
//it under the terms of the GNU General Public License as published by
//the Free Software Foundation, either version 3 of the License, or
//(at your option) any later version.
//
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
//GNU General Public License for more details.
//
//You should have received a copy of the GNU General Public License
//along with this program. If not, see <http://www.gnu.org/licenses/>.
package jd.plugins.hoster;
import java.io.IOException;
import jd.PluginWrapper;
import jd.parser.Regex;
import jd.plugins.DownloadLink;
import jd.plugins.DownloadLink.AvailableStatus;
import jd.plugins.HostPlugin;
import jd.plugins.LinkStatus;
import jd.plugins.PluginException;
import jd.plugins.PluginForHost;
import org.appwork.utils.formatter.SizeFormatter;
@HostPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "upload24.net" }, urls = { "http://(www\\.)?upload24\\.net/[a-z0-9]+\\.[a-z0-9]+" }, flags = { 0 })
public class Upload24Net extends PluginForHost {
private static final String MAINPAGE = "http://upload24.net";
public Upload24Net(PluginWrapper wrapper) {
super(wrapper);
}
@Override
public String getAGBLink() {
return "http://upload24.net/?act=agreement";
}
@Override
public int getMaxSimultanFreeDownloadNum() {
return -1;
}
private String getTempLink() {
String tlink = br.getRegex("<h2 class=\"pay\"><a href=\"(/.*?)\"").getMatch(0);
if (tlink == null) tlink = br.getRegex("\"(/?act=dl\\d+_free\\&f=[a-z0-9]+)\"").getMatch(0);
return tlink;
}
@Override
public void handleFree(DownloadLink downloadLink) throws Exception, PluginException {
requestFileInformation(downloadLink);
// Link is always changing
String tempLink = getTempLink();
if (tempLink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
br.getPage(MAINPAGE + tempLink);
tempLink = getTempLink();
if (tempLink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
br.getPage(MAINPAGE + tempLink);
tempLink = getTempLink();
if (tempLink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
String waittime = br.getRegex("var mcount=(\\d+);").getMatch(0);
int wait = 45;
if (waittime != null) wait = Integer.parseInt(waittime);
sleep(wait * 1001l, downloadLink);
br.getPage(MAINPAGE + tempLink);
tempLink = getTempLink();
if (tempLink == null || !br.containsHTML("/capcha\\.php")) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
String code = getCaptchaCode(MAINPAGE + "/capcha.php", downloadLink);
br.postPage(tempLink, "capcha=" + code);
if (br.containsHTML("(без ограничений<|td>потоков</td>|высокая <|да <)")) throw new PluginException(LinkStatus.ERROR_CAPTCHA);
String dllink = br.getRegex("\"(http://df\\d+\\.upload24\\.net/[a-z0-9]+/.*?)\"").getMatch(0);
if (dllink == null) dllink = br.getRegex("\\[ <a href=\"(http://.*?)\"").getMatch(0);
if (dllink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
dl = jd.plugins.BrowserAdapter.openDownload(br, downloadLink, dllink, true, 1);
if (dl.getConnection().getContentType().contains("html")) {
br.followConnection();
throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
}
dl.startDownload();
}
// do not add @Override here to keep 0.* compatibility
public boolean hasCaptcha() {
return true;
}
@Override
public AvailableStatus requestFileInformation(DownloadLink link) throws IOException, PluginException {
this.setBrowserExclusive();
br.setCustomCharset("utf-8");
br.setFollowRedirects(false);
br.getPage(link.getDownloadURL());
if (br.containsHTML("<title>upload24\\.net </title>")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
String filename = br.getRegex("<div class=\"fname\">(.*?)</div>").getMatch(0);
if (filename == null) filename = br.getRegex("<title>upload24\\.net скачать (.*?)</title>").getMatch(0);
if (filename == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
Regex otherInfo = br.getRegex("<div class=\"ss\">md5: +([a-z0-9]+)</div> +<br>[\t\n\r ]+\\[ <strong>([0-9\\.]+</strong>.{1,10}) \\]");
String filesize = otherInfo.getMatch(1);
String md5 = otherInfo.getMatch(0);
link.setName(filename.trim());
if (filesize != null) link.setDownloadSize(SizeFormatter.getSize(filesize.replace("</strong>", "")));
if (md5 != null) link.setMD5Hash(md5);
return AvailableStatus.TRUE;
}
@Override
public void reset() {
}
@Override
public void resetDownloadlink(DownloadLink link) {
}
}