From cf62cb5ef16c1653a895eb1985bf1256cba37e9d Mon Sep 17 00:00:00 2001 From: Victorien Berlot Date: Tue, 16 Feb 2021 20:21:46 +0100 Subject: [PATCH] Generate a totally random user-agent (#5885) --- src/fr/scantrad/build.gradle | 2 +- .../extension/fr/scantrad/Scantrad.kt | 22 +++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/fr/scantrad/build.gradle b/src/fr/scantrad/build.gradle index b1f749cb1..7c87f31de 100644 --- a/src/fr/scantrad/build.gradle +++ b/src/fr/scantrad/build.gradle @@ -5,7 +5,7 @@ ext { extName = 'Scantrad' pkgNameSuffix = 'fr.scantrad' extClass = '.Scantrad' - extVersionCode = 13 + extVersionCode = 14 libVersion = '1.2' } diff --git a/src/fr/scantrad/src/eu/kanade/tachiyomi/extension/fr/scantrad/Scantrad.kt b/src/fr/scantrad/src/eu/kanade/tachiyomi/extension/fr/scantrad/Scantrad.kt index 2697ba75d..c7f3317d3 100644 --- a/src/fr/scantrad/src/eu/kanade/tachiyomi/extension/fr/scantrad/Scantrad.kt +++ b/src/fr/scantrad/src/eu/kanade/tachiyomi/extension/fr/scantrad/Scantrad.kt @@ -42,17 +42,8 @@ class Scantrad : ParsedHttpSource() { .addNetworkInterceptor(rateLimitInterceptor) .build() - protected open val userAgentRandomizer1 = "${Random.nextInt(9).absoluteValue}" - protected open val userAgentRandomizer2 = "${Random.nextInt(10,99).absoluteValue}" - protected open val userAgentRandomizer3 = "${Random.nextInt(100,999).absoluteValue}" - - override fun headersBuilder() = Headers.Builder().apply { - add( - "User-Agent", - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) " + - "Chrome/8$userAgentRandomizer1.0.4$userAgentRandomizer3.1$userAgentRandomizer2 Safari/537.36" - ) - } + override fun headersBuilder(): Headers.Builder = Headers.Builder() + .add("User-Agent", generateRandomUserAgent(Random.nextInt(10, 30).absoluteValue)) // Popular @@ -224,4 +215,13 @@ class Scantrad : ParsedHttpSource() { override fun imageUrlParse(document: Document) = throw UnsupportedOperationException("Not used") override fun getFilterList() = FilterList() + + // Misc + + private fun generateRandomUserAgent(length: Int): String { + val allowedChars: List = ('a'..'z') + ('A'..'Z') + ('0'..'9') + return (1..length) + .map { allowedChars.random() } + .joinToString("") + } }