diff --git a/src/main/java/com/rarchives/ripme/ripper/rippers/FuraffinityRipper.java b/src/main/java/com/rarchives/ripme/ripper/rippers/FuraffinityRipper.java index 26699c2a..683c791b 100644 --- a/src/main/java/com/rarchives/ripme/ripper/rippers/FuraffinityRipper.java +++ b/src/main/java/com/rarchives/ripme/ripper/rippers/FuraffinityRipper.java @@ -219,16 +219,21 @@ public class FuraffinityRipper extends AbstractHTMLRipper { @Override public String getGID(URL url) throws MalformedURLException { - Pattern p = Pattern - .compile("^https?://www\\.furaffinity\\.net/gallery/([-_.0-9a-zA-Z]+).*$"); + // Gallery + Pattern p = Pattern.compile("^https?://www\\.furaffinity\\.net/gallery/([-_.0-9a-zA-Z]+).*$"); Matcher m = p.matcher(url.toExternalForm()); if (m.matches()) { return m.group(1); } - throw new MalformedURLException("Expected furaffinity.net URL format: " - + "www.furaffinity.net/gallery/username - got " + url - + " instead"); + //Scraps + p = Pattern.compile("^https?://www\\.furaffinity\\.net/scraps/([-_.0-9a-zA-Z]+).*$"); + m = p.matcher(url.toExternalForm()); + if (m.matches()) { + return m.group(1); + } + + throw new MalformedURLException("Unable to find images in" + url); } diff --git a/src/test/java/com/rarchives/ripme/tst/ripper/rippers/FuraffinityRipperTest.java b/src/test/java/com/rarchives/ripme/tst/ripper/rippers/FuraffinityRipperTest.java index cdea9921..f604a7dc 100644 --- a/src/test/java/com/rarchives/ripme/tst/ripper/rippers/FuraffinityRipperTest.java +++ b/src/test/java/com/rarchives/ripme/tst/ripper/rippers/FuraffinityRipperTest.java @@ -6,11 +6,17 @@ import java.net.URL; import com.rarchives.ripme.ripper.rippers.FuraffinityRipper; public class FuraffinityRipperTest extends RippersTest { + public void testFuraffinityAlbum() throws IOException { FuraffinityRipper ripper = new FuraffinityRipper(new URL("https://www.furaffinity.net/gallery/spencerdragon/")); testRipper(ripper); } + public void testFuraffinityScrap() throws IOException { + FuraffinityRipper ripper = new FuraffinityRipper(new URL("http://www.furaffinity.net/scraps/sssonic2/")); + testRipper(ripper); + } + public void testGetGID() throws IOException { URL url = new URL("https://www.furaffinity.net/gallery/mustardgas/"); FuraffinityRipper ripper = new FuraffinityRipper(url);