SpectralScan: Fix chapters not found (#9462)
* Fix chapters not found * Fix lint
This commit is contained in:
parent
4c9e52353a
commit
7cc89b1d4a
@ -1,7 +1,7 @@
|
||||
ext {
|
||||
extName = 'Spectral Scan'
|
||||
extClass = '.SpectralScan'
|
||||
extVersionCode = 45
|
||||
extVersionCode = 46
|
||||
isNsfw = false
|
||||
}
|
||||
|
||||
|
@ -7,16 +7,15 @@ import eu.kanade.tachiyomi.source.model.Page
|
||||
import eu.kanade.tachiyomi.source.model.SChapter
|
||||
import eu.kanade.tachiyomi.source.model.SManga
|
||||
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import keiyoushi.utils.parseAs
|
||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||
import okhttp3.MediaType.Companion.toMediaType
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import okhttp3.ResponseBody.Companion.toResponseBody
|
||||
import okio.ByteString.Companion.decodeBase64
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.io.IOException
|
||||
|
||||
class SpectralScan : ParsedHttpSource() {
|
||||
|
||||
@ -35,7 +34,12 @@ class SpectralScan : ParsedHttpSource() {
|
||||
.addInterceptor { chain ->
|
||||
val request = chain.request()
|
||||
val response = chain.proceed(request)
|
||||
val url = request.url
|
||||
val url = response.request.url
|
||||
|
||||
if (url.toString().contains("login")) {
|
||||
throw IOException("Faça o login na WebView para acessar o contéudo")
|
||||
}
|
||||
|
||||
if (url.fragment.isNullOrBlank().not() && url.fragment!!.contains("page")) {
|
||||
val dto = response.parseAs<ImageSrc>()
|
||||
val byteString = dto.base64.decodeBase64()!!
|
||||
@ -110,24 +114,7 @@ class SpectralScan : ParsedHttpSource() {
|
||||
|
||||
// ==================== Chapter =======================
|
||||
|
||||
override fun chapterListParse(response: Response): List<SChapter> {
|
||||
val document = response.asJsoup()
|
||||
val element = document.selectFirst("section.chapter-section")!!
|
||||
|
||||
val chapters = element.attr("data-total-chapters")
|
||||
val pathSegment = element.attr("data-ajax-url")
|
||||
val url = "$baseUrl$pathSegment".toHttpUrl().newBuilder()
|
||||
.addQueryParameter("per_page", chapters)
|
||||
.build()
|
||||
|
||||
val newHeaders = headers.newBuilder()
|
||||
.set("X-Requested-With", "XMLHttpRequest")
|
||||
.build()
|
||||
|
||||
return super.chapterListParse(client.newCall(GET(url, newHeaders)).execute())
|
||||
}
|
||||
|
||||
override fun chapterListSelector() = ".chapter-item"
|
||||
override fun chapterListSelector() = "a.chapter-item"
|
||||
|
||||
override fun chapterFromElement(element: Element) = SChapter.create().apply {
|
||||
name = element.selectFirst(".chapter-number")!!.text()
|
||||
|
Loading…
x
Reference in New Issue
Block a user