Format CheveretoRipper; implement AGREE_CONSENT cookie for hushpix.

This commit is contained in:
metaprime 2017-11-29 03:18:29 -08:00
parent 088c0d68a7
commit cea853f38e

View File

@ -6,6 +6,8 @@ import java.net.URL;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
@ -16,12 +18,18 @@ import com.rarchives.ripme.ripper.AbstractHTMLRipper;
import com.rarchives.ripme.utils.Http; import com.rarchives.ripme.utils.Http;
public class CheveretoRipper extends AbstractHTMLRipper { public class CheveretoRipper extends AbstractHTMLRipper {
private static final Map<String, String> CONSENT_COOKIE;
static {
CONSENT_COOKIE = new TreeMap<String, String>();
CONSENT_COOKIE.put("AGREE_CONSENT", "1");
}
public CheveretoRipper(URL url) throws IOException { public CheveretoRipper(URL url) throws IOException {
super(url); super(url);
} }
private static List<String> explicit_domains_1 = Arrays.asList("hushpix.com", "tag-fox.com"); private static List<String> explicit_domains_1 = Arrays.asList("hushpix.com", "tag-fox.com");
@Override @Override
public String getHost() { public String getHost() {
return url.toExternalForm().split("/")[2]; return url.toExternalForm().split("/")[2];
@ -60,7 +68,6 @@ public class CheveretoRipper extends AbstractHTMLRipper {
return super.getAlbumTitle(url); return super.getAlbumTitle(url);
} }
@Override @Override
public String getGID(URL url) throws MalformedURLException { public String getGID(URL url) throws MalformedURLException {
Pattern p = Pattern.compile("(?:https?://)?(?:www\\.)?[a-z1-9-]*\\.[a-z1-9]*/album/([a-zA-Z1-9]*)/?$"); Pattern p = Pattern.compile("(?:https?://)?(?:www\\.)?[a-z1-9-]*\\.[a-z1-9]*/album/([a-zA-Z1-9]*)/?$");
@ -75,7 +82,7 @@ public class CheveretoRipper extends AbstractHTMLRipper {
@Override @Override
public Document getFirstPage() throws IOException { public Document getFirstPage() throws IOException {
// "url" is an instance field of the superclass // "url" is an instance field of the superclass
return Http.url(url).get(); return Http.url(url).cookies(CONSENT_COOKIE).get();
} }
@Override @Override
@ -92,9 +99,8 @@ public class CheveretoRipper extends AbstractHTMLRipper {
// This for stops that // This for stops that
if (nextPage == "") { if (nextPage == "") {
return null; return null;
} } else {
else { return Http.url(nextPage).cookies(CONSENT_COOKIE).get();
return Http.url(nextPage).get();
} }
} }
@ -115,6 +121,4 @@ public class CheveretoRipper extends AbstractHTMLRipper {
public void downloadURL(URL url, int index) { public void downloadURL(URL url, int index) {
addURLToDownload(url, getPrefix(index)); addURLToDownload(url, getPrefix(index));
} }
} }