From 94068436e848984c93a666de4f360c60d853a2fc Mon Sep 17 00:00:00 2001 From: jisuyame Date: Thu, 15 Oct 2015 22:27:34 +0300 Subject: [PATCH] Update AbstractHTMLRipper.java --- .../ripme/ripper/AbstractHTMLRipper.java | 47 ++++++++++++++++++- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/rarchives/ripme/ripper/AbstractHTMLRipper.java b/src/main/java/com/rarchives/ripme/ripper/AbstractHTMLRipper.java index c9bb0259..ff2448d3 100644 --- a/src/main/java/com/rarchives/ripme/ripper/AbstractHTMLRipper.java +++ b/src/main/java/com/rarchives/ripme/ripper/AbstractHTMLRipper.java @@ -15,9 +15,11 @@ import com.rarchives.ripme.utils.Utils; /** * Simplified ripper, designed for ripping from sites by parsing HTML. */ + public abstract class AbstractHTMLRipper extends AlbumRipper { +public class Tamindirmp3 extends AbstractHTMLRipper { - public AbstractHTMLRipper(URL url) throws IOException { + public Tamindirmp3(URL url) throws IOException { super(url); } @@ -40,6 +42,47 @@ public abstract class AbstractHTMLRipper extends AlbumRipper { public boolean keepSortOrder() { return true; } + @Override + public String getHost() { + return "Tamindirmp3"; + } + + @Override + public String getDomain() { + return "server28.tamdinle.com"; + } + + @Override + public String getGID(URL url) throws MalformedURLException { + Pattern p = Pattern.compile("^https?://server28.tamdinle\\.com/files/([files-zA-Z0-9]+).*$"); + Matcher m = p.matcher(url.toExternalForm()); + if (m.matches()) { + // Return the text contained between () in the regex + return m.group(1); + } + throw new MalformedURLException("Expected server28.tamindir.com URL format: " + + "server28.tamdinle.com/files/ - got " + url + " instead"); + } + + @Override + public Document getFirstPage() throws IOException { + // "url" is an instance field of the superclass + return Http.url(url).get(); + } + + @Override + public List getURLsFromPage(Document doc) { + List result = new ArrayList(); + for (Element el : doc.select("img")) { + result.add(el.attr("src")); + } + return result + } + + @Override + public void downloadURL(URL url, int index) { + addURLToDownload(url, getPrefix(index)); + } @Override public boolean canRip(URL url) { @@ -171,4 +214,4 @@ public abstract class AbstractHTMLRipper extends AlbumRipper { } return prefix; } -} \ No newline at end of file +}