HuntersScans: Fix chapter list (#9809)
* Fix chapter list * Remove the extra request and the mutable list * Use a simple loop to retrieve the chapter page
This commit is contained in:
parent
9183d5e2d0
commit
d4fb412f9e
@ -3,7 +3,7 @@ ext {
|
||||
extClass = '.HuntersScans'
|
||||
themePkg = 'madara'
|
||||
baseUrl = 'https://readhunters.xyz'
|
||||
overrideVersionCode = 7
|
||||
overrideVersionCode = 8
|
||||
isNsfw = true
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,12 @@
|
||||
package eu.kanade.tachiyomi.extension.pt.huntersscans
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.madara.Madara
|
||||
import eu.kanade.tachiyomi.network.POST
|
||||
import eu.kanade.tachiyomi.network.interceptor.rateLimit
|
||||
import eu.kanade.tachiyomi.source.model.SChapter
|
||||
import eu.kanade.tachiyomi.source.model.SManga
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import rx.Observable
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
@ -21,5 +26,24 @@ class HuntersScans : Madara(
|
||||
|
||||
override val useLoadMoreRequest = LoadMoreStrategy.Always
|
||||
|
||||
override val useNewChapterEndpoint = true
|
||||
override fun fetchChapterList(manga: SManga): Observable<List<SChapter>> =
|
||||
Observable.fromCallable { fetchAllChapters(manga) }
|
||||
|
||||
private fun fetchAllChapters(manga: SManga): List<SChapter> {
|
||||
val chapters = mutableListOf<SChapter>()
|
||||
var page = 1
|
||||
while (true) {
|
||||
val document = client.newCall(POST("${getMangaUrl(manga)}ajax/chapters?t=${page++}", xhrHeaders))
|
||||
.execute()
|
||||
.asJsoup()
|
||||
val currentPage = document.select(chapterListSelector())
|
||||
.map(::chapterFromElement)
|
||||
|
||||
chapters += currentPage
|
||||
|
||||
if (currentPage.isEmpty()) {
|
||||
return chapters
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user