import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
+import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLDecoder;
import java.util.AbstractMap;
for (int i = 1; true; i++) {
URL url = new URL(baseUrl + i + parameters);
try {
- InputStream pageI = Instance.getCache().open(url, this, false);
+ InputStream pageI = Instance.getInstance().getCache().open(url, this, false);
try {
if (IOUtils.readSmallStream(pageI).contains("Nobody here but us chickens!")) {
break;
protected URL getCanonicalUrl(URL source) {
if (isSetOriginalUrl(source)) {
try {
- Document doc = DataUtil.load(Instance.getCache().open(source, this, false), "UTF-8", source.toString());
+ Document doc = DataUtil.load(Instance.getInstance().getCache().open(source, this, false), "UTF-8", source.toString());
for (Element shortname : doc.getElementsByClass("set-shortname")) {
for (Element el : shortname.getElementsByTag("a")) {
if (!el.attr("href").isEmpty())
}
}
} catch (IOException e) {
- Instance.getTraceHandler().error(e);
+ Instance.getInstance().getTraceHandler().error(e);
+ }
+ }
+
+ if (isPool(source)) {
+ try {
+ return new URL(source.toString().replace("/pool/show/", "/pools/"));
+ } catch (MalformedURLException e) {
}
}
Image image = null;
List<Entry<String, URL>> chapters = getChapters(null);
if (!chapters.isEmpty()) {
- URL url = chapters.get(0).getValue();
- image = bsImages.getImage(this, url);
+ URL chap1Url = chapters.get(0).getValue();
+ String imgsChap1 = getChapterContent(chap1Url, 1, null);
+ if (!imgsChap1.isEmpty()) {
+ imgsChap1 = imgsChap1.split("]")[0].substring(1).trim();
+ image = bsImages.getImage(this, new URL(imgsChap1));
+ }
}
return image;
}
private boolean isPool(URL url) {
- return url.getPath().startsWith("/pools/");
+ return url.getPath().startsWith("/pools/") || url.getPath().startsWith("/pool/show/");
}
// set will be renamed into search by canonical url