|
|
|
@ -1,11 +1,14 @@
|
|
|
|
package org.koitharu.kotatsu.parsers.site.galleryadults.all
|
|
|
|
package org.koitharu.kotatsu.parsers.site.galleryadults.all
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import okhttp3.Headers
|
|
|
|
import org.jsoup.internal.StringUtil
|
|
|
|
import org.jsoup.internal.StringUtil
|
|
|
|
import org.jsoup.nodes.Document
|
|
|
|
import org.jsoup.nodes.Document
|
|
|
|
import org.jsoup.nodes.Element
|
|
|
|
import org.jsoup.nodes.Element
|
|
|
|
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
|
|
|
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
|
|
|
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
|
|
|
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
|
|
|
|
|
|
|
import org.koitharu.kotatsu.parsers.config.ConfigKey
|
|
|
|
import org.koitharu.kotatsu.parsers.model.*
|
|
|
|
import org.koitharu.kotatsu.parsers.model.*
|
|
|
|
|
|
|
|
import org.koitharu.kotatsu.parsers.network.UserAgents
|
|
|
|
import org.koitharu.kotatsu.parsers.site.galleryadults.GalleryAdultsParser
|
|
|
|
import org.koitharu.kotatsu.parsers.site.galleryadults.GalleryAdultsParser
|
|
|
|
import org.koitharu.kotatsu.parsers.util.*
|
|
|
|
import org.koitharu.kotatsu.parsers.util.*
|
|
|
|
import java.util.*
|
|
|
|
import java.util.*
|
|
|
|
@ -28,6 +31,13 @@ internal class NHentaiParser(context: MangaLoaderContext) :
|
|
|
|
|
|
|
|
|
|
|
|
override val isMultipleTagsSupported = true
|
|
|
|
override val isMultipleTagsSupported = true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private val userAgentKey = ConfigKey.UserAgent(UserAgents.DEFAULT_BROWSER)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
override val headers: Headers
|
|
|
|
|
|
|
|
get() = super.headers.newBuilder()
|
|
|
|
|
|
|
|
.set("User-Agent", config[userAgentKey])
|
|
|
|
|
|
|
|
.build()
|
|
|
|
|
|
|
|
|
|
|
|
override suspend fun getListPage(page: Int, filter: MangaListFilter?): List<Manga> {
|
|
|
|
override suspend fun getListPage(page: Int, filter: MangaListFilter?): List<Manga> {
|
|
|
|
|
|
|
|
|
|
|
|
val url = buildString {
|
|
|
|
val url = buildString {
|
|
|
|
@ -146,6 +156,11 @@ internal class NHentaiParser(context: MangaLoaderContext) :
|
|
|
|
Locale.CHINESE,
|
|
|
|
Locale.CHINESE,
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
override fun onCreateConfig(keys: MutableCollection<ConfigKey<*>>) {
|
|
|
|
|
|
|
|
super.onCreateConfig(keys)
|
|
|
|
|
|
|
|
keys.add(userAgentKey)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private fun buildQuery(tags: Collection<MangaTag>, language: Locale?): String {
|
|
|
|
private fun buildQuery(tags: Collection<MangaTag>, language: Locale?): String {
|
|
|
|
val joiner = StringUtil.StringJoiner(" ")
|
|
|
|
val joiner = StringUtil.StringJoiner(" ")
|
|
|
|
tags.forEach { tag ->
|
|
|
|
tags.forEach { tag ->
|
|
|
|
|