diff --git a/src/main/java/com/rarchives/ripme/ripper/rippers/GfycatRipper.java b/src/main/java/com/rarchives/ripme/ripper/rippers/GfycatRipper.java index 52a19b74..7c49fbba 100644 --- a/src/main/java/com/rarchives/ripme/ripper/rippers/GfycatRipper.java +++ b/src/main/java/com/rarchives/ripme/ripper/rippers/GfycatRipper.java @@ -29,7 +29,7 @@ public class GfycatRipper extends AbstractHTMLRipper { public GfycatRipper(URL url) throws IOException { - super(url); + super(new URL(url.toExternalForm().split("-")[0].replace("thumbs.", ""))); } @Override @@ -76,15 +76,16 @@ public class GfycatRipper extends AbstractHTMLRipper { @Override public String getGID(URL url) throws MalformedURLException { - Pattern p = Pattern.compile("^https?://[wm.]*gfycat\\.com/@?([a-zA-Z0-9]+).*$"); + Pattern p = Pattern.compile("^https?://(thumbs\\.|[wm\\.]*)gfycat\\.com/@?([a-zA-Z0-9]+).*$"); Matcher m = p.matcher(url.toExternalForm()); - if (m.matches()) { - return m.group(1); - } - + + if (m.matches()) + return m.group(2); + throw new MalformedURLException( - "Expected gfycat.com format:" - + "gfycat.com/id" + "Expected gfycat.com format: " + + "gfycat.com/id or " + + "thumbs.gfycat.com/id.gif" + " Got: " + url); } @@ -92,7 +93,7 @@ public class GfycatRipper extends AbstractHTMLRipper { t = t.replaceAll("\n" + " \n" + " ", ""); - t.replaceAll("\n" + + t = t.replaceAll("\n" + "", ""); t = t.replaceAll("\n", ""); t = t.replaceAll("=\"\"", "");