diff --git a/vripper-core/src/main/kotlin/me/vripper/host/Host.kt b/vripper-core/src/main/kotlin/me/vripper/host/Host.kt index 9fab3a0..cf1d868 100644 --- a/vripper-core/src/main/kotlin/me/vripper/host/Host.kt +++ b/vripper-core/src/main/kotlin/me/vripper/host/Host.kt @@ -171,9 +171,9 @@ internal abstract class Host( fun fetch( url: String, context: Context, - referer: String = "https://vipergirls.to/", transformer: (ClassicHttpResponse) -> T ): T { + val referer = context.headers["Referer"] ?: "https://vipergirls.to/" val httpGet = HttpGet(url).also { it.addHeader("Referer", referer) diff --git a/vripper-core/src/main/kotlin/me/vripper/host/ViprImHost.kt b/vripper-core/src/main/kotlin/me/vripper/host/ViprImHost.kt index 80ca9c1..070a57e 100644 --- a/vripper-core/src/main/kotlin/me/vripper/host/ViprImHost.kt +++ b/vripper-core/src/main/kotlin/me/vripper/host/ViprImHost.kt @@ -35,6 +35,7 @@ internal class ViprImHost : Host("vipr.im", 15) { .map { obj: Node -> obj.textContent } .map { obj: String -> obj.trim() }.orElse(null) val imgUrl = imgNode.attributes.getNamedItem("src").textContent.trim() + context.headers["Referer"] = "https://vipr.im/" Pair(imgTitle!!, imgUrl) } catch (e: Exception) { throw HostException("Unexpected error occurred", e) diff --git a/vripper-core/src/main/kotlin/me/vripper/services/download/ImageDownloadRunnable.kt b/vripper-core/src/main/kotlin/me/vripper/services/download/ImageDownloadRunnable.kt index 50fdd7b..6e45cbd 100644 --- a/vripper-core/src/main/kotlin/me/vripper/services/download/ImageDownloadRunnable.kt +++ b/vripper-core/src/main/kotlin/me/vripper/services/download/ImageDownloadRunnable.kt @@ -49,6 +49,7 @@ internal class ImageDownloadRunnable( cookieStore = HTTPService.cookieStore } val requests = mutableListOf() + val headers = mutableMapOf() init { ApplicationProperties.VRIPPER_DIR.listDirectoryEntries()