mirror of
https://github.com/mirror/jdownloader.git
synced 2024-11-27 05:50:51 +00:00
-fixed diskyandex errorhandling fixes #5711
-added a decrypter to decrypt embedded diziport videos, also improved errorhandling fixes #5712 -fixed voayeurs for tube8 and tnaflix fixes #5716 -added support for shareupload closes #5700 -fixed flyfiles fixes #5703 -fixed oneclickmvz fixes #5704 -improved sourceforge fixes #5705 -fixed naughtyblog for older links fixes #5718 -re-added sharex fixes #5638 git-svn-id: svn://svn.jdownloader.org/jdownloader/trunk@18037 ebf7c1c2-ba36-0410-9fe8-c592906822b4
This commit is contained in:
parent
6ddc080cd5
commit
9604744b85
@ -838,7 +838,6 @@ jd/plugins/decrypter/XXXBlg.class
|
||||
jd/plugins/hoster/MadShareCom.class
|
||||
jd/plugins/hoster/ImageHostOrg.class
|
||||
jd/captcha/methods/lttbt
|
||||
jd/plugins/hoster/ShareXXpgComBr.class
|
||||
jd/plugins/hoster/FileKeeperOrg.class
|
||||
jd/plugins/hoster/AnnonHostNet.class
|
||||
jd/plugins/hoster/JSharerCom.class
|
||||
|
@ -47,7 +47,7 @@ import jd.utils.locale.JDL;
|
||||
"http://(www\\.)?protetorbr\\.com/d\\?id=\\d+", "http://(www\\.)?adv\\.li/[A-Za-z0-9]+", "http://(www\\.)?lezlezlez\\.com/mediaswf\\.php\\?type=vid\\&name=[^<>\"/]+\\.flv", "http://(www\\.)?dwz\\.cn/[A-Za-z0-9]+", "http://(www\\.)?online\\.nolife\\-tv\\.com/index\\.php\\?id=\\d+", "http://(www\\.)?digitaldripped\\.com/[^<>\"\\']+", "http://(www\\.)?guardlink\\.org/[A-Za-z0-9]+", "http://url\\.cn/[0-9a-zA-Z]+", "http://q32\\.ru/\\d+/c/[A-Za-z0-9\\-_]+", "http://(de\\.)?shrk\\.biz/\\w+", "http://(www\\.)?icefilms\\.info/ip\\.php\\?v=\\d+\\&?", "http://(www\\.)?gabber\\.od\\.ua/g/\\?[^/<>\"]+", "http://(www\\.)?vimeo\\.com/(?!(\\d+/|tag|search)).*?/.+", "http://(www\\.)?unlimfiles\\.com/sourceframe/.+", "http://(www\\.)?adfoc\\.us/(serve/\\?id=[a-z0-9]+|[a-z0-9]+)", "http://(www\\.)?mrbrownee70\\.com/\\?id=[A-Za-z0-9]+", "http://[\\w\\.]*?alturl\\.com/[a-z0-9]+",
|
||||
"http://(www\\.)?trancearoundtheworld\\.com/tatw/\\d+", "http://(www\\.)?egfire\\.net/\\d+", "http://(www\\.)?damasgate\\.com/redirector\\.php\\?url=.+", "http://(www\\.)?freeonsmash\\.com/redir/[A-Za-z0-9\\=\\+\\/\\.\\-]+", "http://(www\\.)?lnk\\.co/[A-Za-z0-9]+", "http://(www\\.)?trackstash\\.com/tracks/[a-z0-9\\-]+", "http://(www\\.)?fburls\\.com/\\d+\\-[A-Za-z0-9]+", "http://(www\\.)?protect\\.myurl\\.in/[A-Za-z0-9]+", "http://(www\\.)?h\\-url\\.in/[A-Za-z0-9]+", "https://(www\\.)?dropbox\\.com/s/[a-z0-9]+/.+", "http://(www\\.)?(1lien\\.com/(download/)?\\d+/|1\\-star\\.net/\\d+/\\d+/|stardima\\.com(/anime)?/download/\\d+/)", "http://(www\\.)?protect-ddl\\.com/[a-fA-F0-oneclickmoviez9]+", "http://(www\\.)?filep\\.info/(\\?url=|/)\\d+", "http://(www\\.)?grou\\.ps/[a-z0-9]+/videos/\\d+", "http://(www\\.)?linkexterno\\.com/[A-Za-z0-9]+",
|
||||
"http://(www\\.)?eskimotube\\.com/\\d+\\-.*?\\.html", "http://(www\\.)?m4u\\.in/[a-z0-9]+", "http://(www\\.)?4p5\\.com/[a-z0-9]+", "http://t\\.co/[a-zA-Z0-9]+", "http://[\\w\\.]*?telona\\.biz/protec?tor.*?\\?.*?//:ptth", "http://go\\.madmimi\\.com/redirects/[a-zA-Z0-9]+\\?pa=\\d+", "http://href\\.hu/x/[a-zA-Z0-9\\.]+", "http://hide\\.linkleak\\.org/[a-zA-Z0-9\\.]+", "http://[\\w\\.]*?migre\\.me/[a-z0-9A-Z]+", "http://[\\w\\.]*?degracaemaisgostoso\\.(biz|info)/download/\\?url=.*?:ptth", "http://[\\w\\.]*?altervista\\.org/\\?i=[0-9a-zA-Z]+", "http://[\\w\\.]*?agaleradodownload\\.com/download.*?\\?.*?//:ptth", "http://[\\w\\.]*?musicloud\\.fm/dl/[A-Za-z0-9]+", "http://[\\w\\.]*?wowebook\\.com/(e-|non-e-)book/.*?/.*?\\.html", "http://[\\w\\.]*?(link\\.songs\\.pk/(popsong|song1|bhangra)\\.php\\?songid=|songspk\\.info/ghazals/download/ghazals\\.php\\?id=)[0-9]+",
|
||||
"http://[\\w\\.]*?imageto\\.net/(\\?v=|images/)[0-9a-z]+\\..{2,4}", "http://[\\w\\.]*?clubteam\\.eu/dl\\.php\\?id=\\d\\&c=[a-zA-z0-9=]+", "http://[\\w\\.]*?jforum\\.uni\\.cc/protect/\\?r=[a-z0-9]+", "http://[\\w\\.]*?linksole\\.com/[0-9a-z]+", "http://[\\w\\.]*?deurl\\.me/[0-9A-Z]+", "http://(www\\.)?(yourfileplace|megafilegarden)\\.com/d/\\d+/.+", "http://[\\w\\.]*?muzgruz\\.ru/music/download/\\d+", "http://[\\w\\.]*?zero10\\.net/\\d+", "http://[\\w\\.]*?aiotool\\.net/\\d+", "http://[\\w\\.]*?chip\\.de/c1_videos/.*?-Video_\\d+\\.html", "http://(www\\.)?multiprotect\\.info/\\d+", "http://[\\w\\.]*?nbanews\\.us/\\d+", "http://[\\w\\.]*?top2tech\\.com/\\d+", "http://(www\\.)?umquetenha\\.org/protecao/resolve\\.php\\?link=.+", "http://(www\\.)?oneclickmoviez\\.com/dwnls/[A-Za-z0-9]+/\\d+/\\d+", "http://[\\w\\.]*?1tool\\.biz/\\d+",
|
||||
"http://[\\w\\.]*?imageto\\.net/(\\?v=|images/)[0-9a-z]+\\..{2,4}", "http://[\\w\\.]*?clubteam\\.eu/dl\\.php\\?id=\\d\\&c=[a-zA-z0-9=]+", "http://[\\w\\.]*?jforum\\.uni\\.cc/protect/\\?r=[a-z0-9]+", "http://[\\w\\.]*?linksole\\.com/[0-9a-z]+", "http://[\\w\\.]*?deurl\\.me/[0-9A-Z]+", "http://(www\\.)?(yourfileplace|megafilegarden)\\.com/d/\\d+/.+", "http://[\\w\\.]*?muzgruz\\.ru/music/download/\\d+", "http://[\\w\\.]*?zero10\\.net/\\d+", "http://[\\w\\.]*?aiotool\\.net/\\d+", "http://[\\w\\.]*?chip\\.de/c1_videos/.*?-Video_\\d+\\.html", "http://(www\\.)?multiprotect\\.info/\\d+", "http://[\\w\\.]*?nbanews\\.us/\\d+", "http://[\\w\\.]*?top2tech\\.com/\\d+", "http://(www\\.)?umquetenha\\.org/protecao/resolve\\.php\\?link=.+", "http://(www\\.)?oneclickmoviez\\.com/[a-z]{1,8}/[A-Z0-9\\-_]+/\\d+/\\d+", "http://[\\w\\.]*?1tool\\.biz/\\d+",
|
||||
"http://(www\\.)?trailerzone\\.info/(protect|wait(2)?)\\.(php\\?|html)(key=|u=|#:{1,})[a-zA-Z0-9=+/]+", "http://[\\w\\.]*?imagetwist\\.com/[a-z0-9]{12}", "http://[\\w\\.]*?(file4ever\\.us|catchfile\\.net)/\\d+", "http://[\\w\\.]*?(zero10\\.net/|gamz\\.us/\\?id=)\\d+", "http://(www\\.)?official\\.fm/track(s)?/\\d+", "http://(www\\.)?hypem\\.com/(track/\\d+/|item/[a-z0-9]+)", "http://[\\w\\.]*?academicearth\\.org/lectures/.+", "http://[\\w\\.]*?skreemr\\.org/link\\.jsp\\?id=[A-Z0-9]+", "http://[\\w\\.]*?tm-exchange\\.com/(get\\.aspx\\?action=trackgbx|\\?action=trackshow)\\&id=\\d+", "http://[\\w\\.]*?adiarimore\\.com/miralink/[a-z0-9]+", "http://[\\w\\.]*?mafia\\.to/download-[a-z0-9]+\\.cfm", "http://[\\w\\.]*?bogatube\\.com/tube/\\d+/\\d+/.*?\\.php", "http://[\\w\\.]*?newgrounds\\.com/(portal/view/|audio/listen/)\\d+", "http://(www\\.)?accuratefiles\\.com/fileinfo/[a-z0-9]+",
|
||||
"http://(www\\.)?slutdrive\\.com/video-\\d+\\.html", "http://(www\\.)?view\\.stern\\.de/de/(picture|original)/.*?-\\d+\\.html", "http://(www\\.)?fileblip\\.com/[a-z0-9]+", "http://(www\\.)?warcraft\\.ingame\\.de/downloads/\\?file=\\d+", "http://(www\\.)?mixconnect\\.com/listen/.*?-mid\\d+", "http://(www\\.)?twiturm\\.com/[a-z0-9]+", "http://(www\\.)?ebooksdownloadfree\\.com/.*?/.*?\\.html", "http://(www\\.)?freebooksearcher\\.info/downloadbook\\.php\\?id=\\d+", "http://(www\\.)?ubuntuone\\.com/p/[A-Za-z0-9]+", "http://[\\w\\.]*?mp3\\.wp\\.pl/(?!ftp)(p/strefa/artysta/\\d+,utwor,\\d+\\.html|\\?tg=[A-Za-z0-9=]+)", "http://(www\\.)?gantrack\\.com/t/l/\\d+/[A-Za-z0-9]+", "http://(www\\.)?mediaboom\\.org/engine/go\\.php\\?url=.+" }, flags = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 })
|
||||
@ -154,8 +154,8 @@ public class DecrypterForRedirectServicesWithoutDirectRedirects extends PluginFo
|
||||
finallink = br.getRegex("onclick=\"NewWindow\\('(.*?)','").getMatch(0);
|
||||
} else if (parameter.contains("umquetenha.org/protecao/resolve.php?link=")) {
|
||||
finallink = br.getRegex("http\\-equiv=\"refresh\" content=\"\\d+; url=(http.*?)\"").getMatch(0);
|
||||
} else if (parameter.contains("oneclickmoviez.com/dwnls/")) {
|
||||
final Regex allMatches = new Regex(parameter, "oneclickmoviez\\.com/dwnls/([A-Za-z0-9]+)/(\\d+)/(\\d+)");
|
||||
} else if (parameter.contains("oneclickmoviez.com/")) {
|
||||
final Regex allMatches = new Regex(parameter, "oneclickmoviez\\.com/[a-z]+/([A-Z0-9\\-_]+)/(\\d+)/(\\d+)");
|
||||
final String host = allMatches.getMatch(0);
|
||||
final String id1 = allMatches.getMatch(1);
|
||||
final String id2 = allMatches.getMatch(2);
|
||||
|
54
src/jd/plugins/decrypter/DiziPortComDecrypter.java
Normal file
54
src/jd/plugins/decrypter/DiziPortComDecrypter.java
Normal file
@ -0,0 +1,54 @@
|
||||
//jDownloader - Downloadmanager
|
||||
//Copyright (C) 2009 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.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;
|
||||
|
||||
//Decrypts embedded videos from diziport.com
|
||||
@DecrypterPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "diziport.com" }, urls = { "http://(www\\.)?diziport\\.com/.*?/.*?/(\\d+)?" }, flags = { 0 })
|
||||
public class DiziPortComDecrypter extends PluginForDecrypt {
|
||||
|
||||
public DiziPortComDecrypter(PluginWrapper wrapper) {
|
||||
super(wrapper);
|
||||
}
|
||||
|
||||
public ArrayList<DownloadLink> decryptIt(CryptedLink param, ProgressController progress) throws Exception {
|
||||
ArrayList<DownloadLink> decryptedLinks = new ArrayList<DownloadLink>();
|
||||
String parameter = param.toString();
|
||||
br.getPage(parameter);
|
||||
final String sid = br.getRegex("\\&sid=(.*?)\"").getMatch(0);
|
||||
if (sid != null) {
|
||||
br.getHeaders().put("X-Requested-With", "XMLHttpRequest");
|
||||
br.getPage("http://diziport.com/nesne-uye.php?olay=sayac&sid=" + sid);
|
||||
String externID = br.getRegex("file:\\'((www\\.)?youtube\\.com/watch\\?v=[^<>\"]*?)\\',").getMatch(0);
|
||||
if (externID != null) {
|
||||
decryptedLinks.add(createDownloadlink("http://" + externID));
|
||||
return decryptedLinks;
|
||||
}
|
||||
}
|
||||
decryptedLinks.add(createDownloadlink(parameter.replace("diziport.com/", "diziportdecrypted.com/")));
|
||||
return decryptedLinks;
|
||||
}
|
||||
|
||||
}
|
@ -39,23 +39,23 @@ public class NaughtyBlgOrg extends PluginForDecrypt {
|
||||
|
||||
// check if DL is from the 'clips' section
|
||||
Regex categoryCheck = null;
|
||||
categoryCheck = br.getRegex("<div id=\"post-\\d+\" class=\".*category-clips.*\">");
|
||||
categoryCheck = br.getRegex("<div id=\"post-\\d+\" class=\".*category\\-clips.*\">");
|
||||
if (categoryCheck.matches()) {
|
||||
category = Category.CLIP;
|
||||
}
|
||||
// check if DL is from the 'movies' section
|
||||
categoryCheck = br.getRegex("<div id=\"post-\\d+\" class=\".*category-movies.*\">");
|
||||
categoryCheck = br.getRegex("<div id=\"post-\\d+\" class=\".*category\\-movies.*\">");
|
||||
if (categoryCheck.matches()) {
|
||||
category = Category.MOVIE;
|
||||
}
|
||||
// check if DL is from the 'siterips' section
|
||||
categoryCheck = br.getRegex("<div id=\"post-\\d+\" class=\".*category-siterips.*\">");
|
||||
categoryCheck = br.getRegex("<div id=\"post-\\d+\" class=\".*category\\-siterips.*\">");
|
||||
if (categoryCheck.matches()) {
|
||||
category = Category.SITERIP;
|
||||
}
|
||||
String contentReleaseLinks = null;
|
||||
if (category != Category.SITERIP) {
|
||||
contentReleaseLinks = br.getRegex(">Download:</(.*?)</div>").getMatch(0);
|
||||
contentReleaseLinks = br.getRegex(">Download:?</(.*?)</div>").getMatch(0);
|
||||
if (contentReleaseLinks == null) {
|
||||
logger.warning("contentReleaseLinks == null");
|
||||
return null;
|
||||
|
@ -40,6 +40,8 @@ public class SourceForgeNet extends PluginForDecrypt {
|
||||
public ArrayList<DownloadLink> decryptIt(CryptedLink param, ProgressController progress) throws Exception {
|
||||
ArrayList<DownloadLink> decryptedLinks = new ArrayList<DownloadLink>();
|
||||
String parameter = param.toString();
|
||||
// We get downloadlinks depending on our useragent
|
||||
br.getHeaders().put("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1");
|
||||
br.setFollowRedirects(true);
|
||||
// Test if we already have a direct link here
|
||||
URLConnectionAdapter con = br.openGetConnection(parameter);
|
||||
|
@ -72,7 +72,7 @@ public class VoaYeursCom extends PluginForDecrypt {
|
||||
}
|
||||
externID = br.getRegex("\"(http://(www\\.)?tube8\\.com/embed/[^<>\"/]*?/[^<>\"/]*?/\\d+/?)\"").getMatch(0);
|
||||
if (externID != null) {
|
||||
decryptedLinks.add(createDownloadlink(externID.replace("tube8.com/embed", "tube8.com/")));
|
||||
decryptedLinks.add(createDownloadlink(externID.replace("tube8.com/embed/", "tube8.com/")));
|
||||
return decryptedLinks;
|
||||
}
|
||||
externID = br.getRegex("(http://(www\\.)?drtuber\\.com/player/config_embed3\\.php\\?vkey=[a-z0-9]+)").getMatch(0);
|
||||
@ -120,11 +120,6 @@ public class VoaYeursCom extends PluginForDecrypt {
|
||||
decryptedLinks.add(createDownloadlink("http://xhamster.com/movies/" + externID + "/" + System.currentTimeMillis() + ".html"));
|
||||
return decryptedLinks;
|
||||
}
|
||||
externID = br.getRegex("player\\.tnaflix\\.com/video/(\\d+)\"").getMatch(0);
|
||||
if (externID != null) {
|
||||
decryptedLinks.add(createDownloadlink("http://www.tnaflix.com/cum-videos/" + System.currentTimeMillis() + "/video" + externID));
|
||||
return decryptedLinks;
|
||||
}
|
||||
externID = br.getRegex("pornhub\\.com/embed/(\\d+)").getMatch(0);
|
||||
if (externID == null) externID = br.getRegex("pornhub\\.com/view_video\\.php\\?viewkey=(\\d+)").getMatch(0);
|
||||
if (externID != null) {
|
||||
@ -158,6 +153,19 @@ public class VoaYeursCom extends PluginForDecrypt {
|
||||
decryptedLinks.add(dl);
|
||||
return decryptedLinks;
|
||||
}
|
||||
externID = br.getRegex("tnaflix\\.com//embedding_player/player[^<>\"/]*?\" /><param name=\"FlashVars\" value=\"config=(embedding_feed\\.php\\?viewkey=[a-z0-9]+)\"").getMatch(0);
|
||||
if (externID != null) {
|
||||
br.getPage("http://www.tnaflix.com/embedding_player/" + externID);
|
||||
externID = br.getRegex("<file>(http://[^<>\"]*?)</file>").getMatch(0);
|
||||
if (externID == null) {
|
||||
logger.warning("Decrypter broken for link: " + parameter);
|
||||
return null;
|
||||
}
|
||||
final DownloadLink dl = createDownloadlink("directhttp://" + externID);
|
||||
dl.setFinalFileName(Encoding.htmlDecode(filename.trim()) + ".flv");
|
||||
decryptedLinks.add(dl);
|
||||
return decryptedLinks;
|
||||
}
|
||||
if (externID == null) {
|
||||
logger.warning("Couldn't decrypt link: " + parameter);
|
||||
return null;
|
||||
|
@ -60,7 +60,7 @@ public class DiskYandexNet extends PluginForHost {
|
||||
br.setFollowRedirects(true);
|
||||
br.getHeaders().put("X-Requested-With", "XMLHttpRequest");
|
||||
br.postPage("https://disk.yandex.net/neo2/handlers/handlers.jsx", "_handlers=disk-file-info&_locale=en&_page=disk-share&_service=disk&hash=" + Encoding.urlEncode(getHashID(link)));
|
||||
if (br.containsHTML(">Decryption error<")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
if (br.containsHTML(">resource not found<")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
String filename = parse("name");
|
||||
String filesize = parse("size");
|
||||
if (filename == null || filesize == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
|
@ -30,7 +30,7 @@ import jd.plugins.LinkStatus;
|
||||
import jd.plugins.PluginException;
|
||||
import jd.plugins.PluginForHost;
|
||||
|
||||
@HostPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "diziport.com" }, urls = { "http://(www\\.)?diziport\\.com/.*?/.*?/(\\d+)?" }, flags = { 0 })
|
||||
@HostPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "diziport.com" }, urls = { "http://(www\\.)?diziportdecrypted\\.com/.*?/.*?/(\\d+)?" }, flags = { 0 })
|
||||
public class DiziPortCom extends PluginForHost {
|
||||
|
||||
private String DLLINK = null;
|
||||
@ -49,15 +49,8 @@ public class DiziPortCom extends PluginForHost {
|
||||
return -1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleFree(DownloadLink downloadLink) throws Exception {
|
||||
requestFileInformation(downloadLink);
|
||||
dl = jd.plugins.BrowserAdapter.openDownload(br, downloadLink, DLLINK, true, 0);
|
||||
if (dl.getConnection().getContentType().contains("html")) {
|
||||
br.followConnection();
|
||||
throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
}
|
||||
dl.startDownload();
|
||||
public void correctDownloadLink(DownloadLink link) {
|
||||
link.setUrlDownload(link.getDownloadURL().replace("diziportdecrypted.com/", "diziport.com/"));
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -65,13 +58,13 @@ public class DiziPortCom extends PluginForHost {
|
||||
this.setBrowserExclusive();
|
||||
br.setFollowRedirects(true);
|
||||
br.getPage(downloadLink.getDownloadURL());
|
||||
if (br.containsHTML(">sayfa bulunamadý")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
if (br.containsHTML(">sayfa bulunamadý") || !br.containsHTML("\\'/js/swfobject\\.js\\'")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
String filename = br.getRegex("<meta property=\"og:title\" content=\"(.*?) izle \\- Diziport\"").getMatch(0);
|
||||
if (filename == null) filename = br.getRegex("<title>(.*?) izle - Diziport</title>").getMatch(0);
|
||||
DLLINK = br.getRegex("\\&sid=(.*?)\"").getMatch(0);
|
||||
if (filename == null || DLLINK == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
br.getHeaders().put("X-Requested-With", "XMLHttpRequest");
|
||||
br.getPage("http://diziport.com/nesne.php?olay=sayac&sid=" + DLLINK);
|
||||
br.getPage("http://diziport.com/nesne-uye.php?olay=sayac&sid=" + DLLINK);
|
||||
DLLINK = br.getRegex("\\&strSource=(http.*?)(\\&publisherLogo=|\\')").getMatch(0);
|
||||
if (DLLINK == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
DLLINK = Encoding.htmlDecode(DLLINK);
|
||||
@ -104,6 +97,17 @@ public class DiziPortCom extends PluginForHost {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleFree(DownloadLink downloadLink) throws Exception {
|
||||
requestFileInformation(downloadLink);
|
||||
dl = jd.plugins.BrowserAdapter.openDownload(br, downloadLink, DLLINK, true, 0);
|
||||
if (dl.getConnection().getContentType().contains("html")) {
|
||||
br.followConnection();
|
||||
throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
}
|
||||
dl.startDownload();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reset() {
|
||||
}
|
||||
|
@ -19,6 +19,7 @@ package jd.plugins.hoster;
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import jd.PluginWrapper;
|
||||
import jd.config.Property;
|
||||
@ -92,7 +93,7 @@ public class FileFilesNet extends PluginForHost {
|
||||
this.setBrowserExclusive();
|
||||
br.getPage(link.getDownloadURL());
|
||||
if (br.containsHTML(">[\r\n\t ]+File not found\\![\r\n\t ]+<")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
String[][] fileInfo = br.getRegex("(?i)<div id=\"file_det\">[\r\n\t ]+(.+) \\- ([\\d\\.]+ (KB|MB|GB|TB))").getMatches();
|
||||
String[][] fileInfo = br.getRegex(Pattern.compile("<div id=\"file_det\" style=\"top:\\d+%;\">[\r\n\t ]+(.+) \\- ([\\d\\.]+ (KB|MB|GB|TB))", Pattern.CASE_INSENSITIVE)).getMatches();
|
||||
if (fileInfo == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
link.setName(Encoding.htmlDecode(fileInfo[0][0].trim()));
|
||||
link.setDownloadSize(SizeFormatter.getSize(fileInfo[0][1]));
|
||||
@ -105,7 +106,8 @@ public class FileFilesNet extends PluginForHost {
|
||||
if (dllink == null) {
|
||||
requestFileInformation(downloadLink);
|
||||
br.postPage(HOST + "/", "getDownLink=" + new Regex(downloadLink.getDownloadURL(), "net/(.*)").getMatch(0));
|
||||
// they don't show any info about limits or waits. You seem to just get '#' instead of link.
|
||||
// they don't show any info about limits or waits. You seem to just
|
||||
// get '#' instead of link.
|
||||
if (br.containsHTML("#downlink\\|#")) throw new PluginException(LinkStatus.ERROR_IP_BLOCKED, "Hoster connection limit reached.", 10 * 60 * 1000l);
|
||||
dllink = getDllink();
|
||||
if (dllink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
@ -228,7 +230,8 @@ public class FileFilesNet extends PluginForHost {
|
||||
if (dllink == null) {
|
||||
br.postPage(HOST + "/", "getDownLink=" + new Regex(link.getDownloadURL(), "net/(.*)").getMatch(0));
|
||||
dllink = getDllink();
|
||||
// they don't show any info about limits or waits. You seem to just get '#' instead of link.
|
||||
// they don't show any info about limits or waits. You seem to just
|
||||
// get '#' instead of link.
|
||||
if (br.containsHTML("#downlink\\|#")) throw new PluginException(LinkStatus.ERROR_IP_BLOCKED, "Hoster connection limit reached.", 10 * 60 * 1000l);
|
||||
if (dllink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
}
|
||||
|
145
src/jd/plugins/hoster/ShareUploadNet.java
Normal file
145
src/jd/plugins/hoster/ShareUploadNet.java
Normal file
@ -0,0 +1,145 @@
|
||||
//jDownloader - Downloadmanager
|
||||
//Copyright (C) 2009 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.File;
|
||||
|
||||
import jd.PluginWrapper;
|
||||
import jd.nutils.encoding.Encoding;
|
||||
import jd.parser.html.HTMLParser;
|
||||
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 jd.utils.JDUtilities;
|
||||
|
||||
import org.appwork.utils.formatter.SizeFormatter;
|
||||
|
||||
@HostPlugin(revision = "$Revision$", interfaceVersion = 2, names = { "shareupload.net" }, urls = { "http://(www\\.)?shareupload\\.net/((\\?d|download\\.php\\?id)=[A-Z0-9]+|((en|ru|fr|es|de)/)?file/[0-9]+/)" }, flags = { 2 })
|
||||
public class ShareUploadNet extends PluginForHost {
|
||||
|
||||
public ShareUploadNet(PluginWrapper wrapper) {
|
||||
super(wrapper);
|
||||
this.enablePremium(COOKIE_HOST + "/register.php?g=3");
|
||||
}
|
||||
|
||||
// MhfScriptBasic 1.6
|
||||
@Override
|
||||
public String getAGBLink() {
|
||||
return COOKIE_HOST + "/rules.php";
|
||||
}
|
||||
|
||||
private static final String COOKIE_HOST = "http://shareupload.net";
|
||||
|
||||
public void correctDownloadLink(DownloadLink link) {
|
||||
link.setUrlDownload(link.getDownloadURL().replaceAll("(en|ru|fr|es|de)/file/", "file/"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public AvailableStatus requestFileInformation(DownloadLink parameter) throws Exception {
|
||||
this.setBrowserExclusive();
|
||||
br.setFollowRedirects(true);
|
||||
br.setCookie(COOKIE_HOST, "mfh_mylang", "en");
|
||||
br.setCookie(COOKIE_HOST, "yab_mylang", "en");
|
||||
br.getPage(parameter.getDownloadURL());
|
||||
if (br.getURL().contains("&code=DL_FileNotFound") || br.containsHTML("(Your requested file is not found|No file found)")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
String filename = br.getRegex("<h2 class=\"float\\-left\">([^<>\"]*?)</h2>").getMatch(0);
|
||||
String filesize = getData("File size");
|
||||
if (filename == null || filename.matches("")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
parameter.setFinalFileName(filename.trim());
|
||||
if (filesize != null) parameter.setDownloadSize(SizeFormatter.getSize(filesize));
|
||||
return AvailableStatus.TRUE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleFree(DownloadLink downloadLink) throws Exception {
|
||||
this.setBrowserExclusive();
|
||||
requestFileInformation(downloadLink);
|
||||
if (br.containsHTML("value=\"Free Users\""))
|
||||
br.postPage(downloadLink.getDownloadURL(), "Free=Free+Users");
|
||||
else if (br.getFormbyProperty("name", "entryform1") != null) br.submitForm(br.getFormbyProperty("name", "entryform1"));
|
||||
|
||||
final String rcID = br.getRegex("challenge\\?k=([^<>\"]*?)\"").getMatch(0);
|
||||
if (rcID == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
|
||||
PluginForHost recplug = JDUtilities.getPluginForHost("DirectHTTP");
|
||||
jd.plugins.hoster.DirectHTTP.Recaptcha rc = ((DirectHTTP) recplug).getReCaptcha(br);
|
||||
rc.setId(rcID);
|
||||
rc.load();
|
||||
File cf = rc.downloadCaptcha(getLocalCaptchaFile());
|
||||
String c = getCaptchaCode(cf, downloadLink);
|
||||
|
||||
br.getHeaders().put("X-Requested-With", "XMLHttpRequest");
|
||||
br.postPage(downloadLink.getDownloadURL(), "downloadverify=1&d=1&recaptcha_response_field=" + c + "&recaptcha_challenge_field=" + rc.getChallenge());
|
||||
if (br.containsHTML("incorrect\\-captcha\\-sol")) throw new PluginException(LinkStatus.ERROR_CAPTCHA);
|
||||
final String reconnectWaittime = br.getRegex("You must wait (\\d+) mins\\. for next download.").getMatch(0);
|
||||
if (reconnectWaittime != null) throw new PluginException(LinkStatus.ERROR_IP_BLOCKED, Integer.parseInt(reconnectWaittime) * 60 * 1001l);
|
||||
// Note that there are links which always show this error, must be a
|
||||
// bug!
|
||||
if (br.containsHTML("The allowed bandwidth assigned to your IP is used up")) throw new PluginException(LinkStatus.ERROR_IP_BLOCKED);
|
||||
final String finalLink = findLink();
|
||||
if (finalLink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
int wait = 60;
|
||||
final String waittime = br.getRegex("countdown\\((\\d+)\\);").getMatch(0);
|
||||
if (waittime != null) wait = Integer.parseInt(waittime);
|
||||
sleep(wait * 1001l, downloadLink);
|
||||
dl = jd.plugins.BrowserAdapter.openDownload(br, downloadLink, finalLink, true, 1);
|
||||
if (dl.getConnection().getContentType().contains("html")) {
|
||||
br.followConnection();
|
||||
|
||||
if (br.containsHTML(">AccessKey is expired, please request")) throw new PluginException(LinkStatus.ERROR_FATAL, "FATAL server error, waittime skipped?");
|
||||
throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
}
|
||||
dl.startDownload();
|
||||
}
|
||||
|
||||
private String findLink() throws Exception {
|
||||
String finalLink = br.getRegex("(http://.{5,30}getfile\\.php\\?id=\\d+[^<>\"\\']*?)(\"|\\')").getMatch(0);
|
||||
if (finalLink == null) {
|
||||
String[] sitelinks = HTMLParser.getHttpLinks(br.toString(), null);
|
||||
if (sitelinks == null || sitelinks.length == 0) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
for (String alink : sitelinks) {
|
||||
alink = Encoding.htmlDecode(alink);
|
||||
if (alink.contains("access_key=") || alink.contains("getfile.php?")) {
|
||||
finalLink = alink;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return finalLink;
|
||||
}
|
||||
|
||||
private String getData(final String data) {
|
||||
return br.getRegex(">" + data + "</strong></li>[\t\n\r ]+<li class=\"col\\-w50\">([^<>\"]*?)</li>").getMatch(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reset() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void resetDownloadlink(DownloadLink link) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxSimultanFreeDownloadNum() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
}
|
96
src/jd/plugins/hoster/ShareXXpgComBr.java
Normal file
96
src/jd/plugins/hoster/ShareXXpgComBr.java
Normal file
@ -0,0 +1,96 @@
|
||||
// jDownloader - Downloadmanager
|
||||
// Copyright (C) 2009 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 jd.PluginWrapper;
|
||||
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 = { "sharex.xpg.com.br" }, urls = { "http://(www\\.)?sharex\\.xpg\\.com\\.br/files/[0-9]+" }, flags = { 0 })
|
||||
public class ShareXXpgComBr extends PluginForHost {
|
||||
|
||||
public ShareXXpgComBr(PluginWrapper wrapper) {
|
||||
super(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAGBLink() {
|
||||
return "http://sharex.xpg.com.br/contact.php";
|
||||
}
|
||||
|
||||
/**
|
||||
* Important: brazil proxy is needed, else you are redirected to another
|
||||
* site!!!
|
||||
*/
|
||||
@Override
|
||||
public AvailableStatus requestFileInformation(DownloadLink downloadLink) throws Exception {
|
||||
this.setBrowserExclusive();
|
||||
br.setFollowRedirects(true);
|
||||
br.getPage(downloadLink.getDownloadURL());
|
||||
if (br.getURL().contains("/?NOT_FOUND")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
String filename = br.getRegex("<div class=\"downinfo\">([^<>\"]*?)<").getMatch(0);
|
||||
if (filename == null) {
|
||||
filename = br.getRegex("/download/.*?/(.*?)\"").getMatch(0);
|
||||
}
|
||||
String filesize = br.getRegex(">([0-9]+ bytes)<").getMatch(0);
|
||||
if (filename == null) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
downloadLink.setName(filename.trim());
|
||||
if (filesize != null) downloadLink.setDownloadSize(SizeFormatter.getSize(filesize));
|
||||
return AvailableStatus.TRUE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleFree(DownloadLink link) throws Exception {
|
||||
this.setBrowserExclusive();
|
||||
requestFileInformation(link);
|
||||
String dllink = br.getRegex("<div class=\"downbut\"><a href=\"(http://[^<>\"]*?)\"").getMatch(0);
|
||||
if (dllink == null) dllink = br.getRegex("\"(http://sharex\\.xpg\\.com\\.br/download/[0-9]+/.*?)\"").getMatch(0);
|
||||
if (dllink == null) throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
dllink = dllink.replaceAll("\\{", "%7B");
|
||||
dllink = dllink.replaceAll("\\[", "%5B");
|
||||
dllink = dllink.replaceAll("\\]", "%5D");
|
||||
dllink = dllink.replaceAll("\\}", "%7D");
|
||||
dl = jd.plugins.BrowserAdapter.openDownload(br, link, dllink, true, 0);
|
||||
if ((dl.getConnection().getContentType().contains("html"))) {
|
||||
if (dl.getConnection().getResponseCode() == 503) throw new PluginException(LinkStatus.ERROR_TEMPORARILY_UNAVAILABLE, "Server error", 60 * 60 * 1000l);
|
||||
br.followConnection();
|
||||
if (br.containsHTML(">404 Not Found<")) throw new PluginException(LinkStatus.ERROR_FILE_NOT_FOUND);
|
||||
throw new PluginException(LinkStatus.ERROR_PLUGIN_DEFECT);
|
||||
}
|
||||
dl.startDownload();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxSimultanFreeDownloadNum() {
|
||||
return -1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reset() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void resetDownloadlink(DownloadLink link) {
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user