From a7dc1414e794f944200ea9959cb4f3856666b742 Mon Sep 17 00:00:00 2001 From: cyian-1756 Date: Fri, 28 Sep 2018 09:52:55 -0400 Subject: [PATCH 1/2] Ported YoupornRipper to AbstractSingleFileRipper --- .../rippers/{video => }/YoupornRipper.java | 43 +++++++++++-------- .../tst/ripper/rippers/YoupornRipperTest.java | 19 ++++++++ 2 files changed, 45 insertions(+), 17 deletions(-) rename src/main/java/com/rarchives/ripme/ripper/rippers/{video => }/YoupornRipper.java (64%) create mode 100644 src/test/java/com/rarchives/ripme/tst/ripper/rippers/YoupornRipperTest.java diff --git a/src/main/java/com/rarchives/ripme/ripper/rippers/video/YoupornRipper.java b/src/main/java/com/rarchives/ripme/ripper/rippers/YoupornRipper.java similarity index 64% rename from src/main/java/com/rarchives/ripme/ripper/rippers/video/YoupornRipper.java rename to src/main/java/com/rarchives/ripme/ripper/rippers/YoupornRipper.java index 2399ea87..e99ffef5 100644 --- a/src/main/java/com/rarchives/ripme/ripper/rippers/video/YoupornRipper.java +++ b/src/main/java/com/rarchives/ripme/ripper/rippers/YoupornRipper.java @@ -1,11 +1,14 @@ -package com.rarchives.ripme.ripper.rippers.video; +package com.rarchives.ripme.ripper.rippers; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; +import java.util.ArrayList; +import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; +import com.rarchives.ripme.ripper.AbstractSingleFileRipper; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; @@ -13,9 +16,8 @@ import org.jsoup.select.Elements; import com.rarchives.ripme.ripper.VideoRipper; import com.rarchives.ripme.utils.Http; -public class YoupornRipper extends VideoRipper { +public class YoupornRipper extends AbstractSingleFileRipper { - private static final String HOST = "youporn"; public YoupornRipper(URL url) throws IOException { super(url); @@ -23,7 +25,12 @@ public class YoupornRipper extends VideoRipper { @Override public String getHost() { - return HOST; + return "youporn"; + } + + @Override + public String getDomain() { + return "youporn.com"; } @Override @@ -34,10 +41,21 @@ public class YoupornRipper extends VideoRipper { } @Override - public URL sanitizeURL(URL url) throws MalformedURLException { - return url; + public Document getFirstPage() throws IOException { + return Http.url(this.url).get(); } + @Override + public List getURLsFromPage(Document doc) { + List results = new ArrayList<>(); + Elements videos = doc.select("video"); + + Element video = videos.get(0); + results.add(video.attr("src")); + return results; + } + + @Override public String getGID(URL url) throws MalformedURLException { Pattern p = Pattern.compile("^https?://[wm.]*youporn\\.com/watch/([0-9]+).*$"); @@ -53,16 +71,7 @@ public class YoupornRipper extends VideoRipper { } @Override - public void rip() throws IOException { - LOGGER.info(" Retrieving " + this.url); - Document doc = Http.url(this.url).get(); - Elements videos = doc.select("video"); - if (videos.isEmpty()) { - throw new IOException("Could not find Embed code at " + url); - } - Element video = videos.get(0); - String vidUrl = video.attr("src"); - addURLToDownload(new URL(vidUrl), HOST + "_" + getGID(this.url)); - waitForThreads(); + public void downloadURL(URL url, int index) { + addURLToDownload(url, getPrefix(index)); } } \ No newline at end of file diff --git a/src/test/java/com/rarchives/ripme/tst/ripper/rippers/YoupornRipperTest.java b/src/test/java/com/rarchives/ripme/tst/ripper/rippers/YoupornRipperTest.java new file mode 100644 index 00000000..a3da81fc --- /dev/null +++ b/src/test/java/com/rarchives/ripme/tst/ripper/rippers/YoupornRipperTest.java @@ -0,0 +1,19 @@ +package com.rarchives.ripme.tst.ripper.rippers; + +import com.rarchives.ripme.ripper.rippers.YoupornRipper; + +import java.io.IOException; +import java.net.URL; +import java.util.ArrayList; +import java.util.List; + +public class YoupornRipperTest extends RippersTest { + public void testYoupornRipper() throws IOException { + List contentURLs = new ArrayList<>(); + contentURLs.add(new URL("http://www.youporn.com/watch/7669155/mrs-li-amateur-69-orgasm/?from=categ")); + for (URL url : contentURLs) { + YoupornRipper ripper = new YoupornRipper(url); + testRipper(ripper); + } + } +} From fe842bbd24539513320200047604eaee1b2c3bfe Mon Sep 17 00:00:00 2001 From: cyian-1756 Date: Fri, 28 Sep 2018 09:53:22 -0400 Subject: [PATCH 2/2] Removed youporn ripper test form VideoRippersTest --- .../ripme/tst/ripper/rippers/VideoRippersTest.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/test/java/com/rarchives/ripme/tst/ripper/rippers/VideoRippersTest.java b/src/test/java/com/rarchives/ripme/tst/ripper/rippers/VideoRippersTest.java index c232a81e..913b4ce4 100644 --- a/src/test/java/com/rarchives/ripme/tst/ripper/rippers/VideoRippersTest.java +++ b/src/test/java/com/rarchives/ripme/tst/ripper/rippers/VideoRippersTest.java @@ -7,7 +7,7 @@ import java.util.List; import com.rarchives.ripme.ripper.VideoRipper; import com.rarchives.ripme.ripper.rippers.video.PornhubRipper; -import com.rarchives.ripme.ripper.rippers.video.YoupornRipper; +import com.rarchives.ripme.ripper.rippers.YoupornRipper; import com.rarchives.ripme.ripper.rippers.video.YuvutuRipper; public class VideoRippersTest extends RippersTest { @@ -55,14 +55,6 @@ public class VideoRippersTest extends RippersTest { } } - public void testYoupornRipper() throws IOException { - List contentURLs = new ArrayList<>(); - contentURLs.add(new URL("http://www.youporn.com/watch/7669155/mrs-li-amateur-69-orgasm/?from=categ")); - for (URL url : contentURLs) { - YoupornRipper ripper = new YoupornRipper(url); - videoTestHelper(ripper); - } - } public void testYuvutuRipper() throws IOException { List contentURLs = new ArrayList<>();