Minor fix

devi 3 years ago
parent 07c3f22f75
commit 908cc22619

@ -66,7 +66,6 @@ internal class Mangaowl(context: MangaLoaderContext) :
}
else -> {
append("/8-comics")
append("?page=")
append(page.toString())
@ -129,29 +128,25 @@ internal class Mangaowl(context: MangaLoaderContext) :
}
private fun getChapters(mangaUrl: String, doc: Document): List<MangaChapter> {
val dateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSS'Z'", sourceLocale)
val script = doc.selectFirstOrThrow("script:containsData(chapters:)")
val json =
script.data().substringAfter("chapters:[").substringBeforeLast(')').substringBefore("],latest_chapter:")
.split("},")
val slug = mangaUrl.substringAfterLast("/")
val chapter = ArrayList<MangaChapter>()
val num = 0
json.map { t ->
var lastIndexed = 0
json.mapIndexed { i, t ->
if (t.contains("Chapter")) {
val id = t.substringAfter("id:").substringBefore(",created_at")
val url = "/reading/$slug/$id"
val date = t.substringAfter("created_at:\"").substringBefore("\"")
val name = t.substringAfter("name:\"").substringBefore("\"")
chapter.add(
MangaChapter(
id = generateUid(url),
name = name,
number = num + 1,
number = i + 1,
url = url,
uploadDate = dateFormat.tryParse(date),
source = source,
@ -159,6 +154,7 @@ internal class Mangaowl(context: MangaLoaderContext) :
branch = null,
),
)
lastIndexed = i
}
}
@ -171,7 +167,7 @@ internal class Mangaowl(context: MangaLoaderContext) :
MangaChapter(
id = generateUid(url),
name = name,
number = num + 1,
number = lastIndexed + 1,
url = url,
uploadDate = dateFormat.tryParse(date),
source = source,
@ -179,13 +175,11 @@ internal class Mangaowl(context: MangaLoaderContext) :
branch = null,
),
)
return chapter
}
override suspend fun getPages(chapter: MangaChapter): List<MangaPage> {
val id = chapter.url.substringAfterLast("/")
val json = webClient.httpGet("https://api.mangaowl.to/v1/chapters/$id/images?page_size=100").parseJson()
return json.getJSONArray("results").mapJSON { jo ->
MangaPage(

@ -1,12 +1,39 @@
package org.koitharu.kotatsu.parsers.site.mangareader.ar
import org.json.JSONObject
import org.koitharu.kotatsu.parsers.MangaLoaderContext
import org.koitharu.kotatsu.parsers.MangaSourceParser
import org.koitharu.kotatsu.parsers.model.MangaChapter
import org.koitharu.kotatsu.parsers.model.MangaPage
import org.koitharu.kotatsu.parsers.model.MangaSource
import org.koitharu.kotatsu.parsers.site.mangareader.MangaReaderParser
import org.koitharu.kotatsu.parsers.util.*
import java.util.ArrayList
@MangaSourceParser("POTATOMANGA", "Potato Manga", "ar")
internal class PotatoManga(context: MangaLoaderContext) :
MangaReaderParser(context, MangaSource.POTATOMANGA, "potatomanga.xyz", pageSize = 30, searchPageSize = 10) {
override val listUrl = "/series"
override suspend fun getPages(chapter: MangaChapter): List<MangaPage> {
val chapterUrl = chapter.url.toAbsoluteUrl(domain)
val docs = webClient.httpGet(chapterUrl).parseHtml()
val script = docs.selectFirstOrThrow(selectTestScript)
val images = JSONObject(script.data().substringAfter('(').substringBeforeLast(')'))
.getJSONArray("sources")
.getJSONObject(0)
.getJSONArray("images")
val pages = ArrayList<MangaPage>(images.length())
for (i in 0 until images.length()) {
pages.add(
MangaPage(
id = generateUid(images.getString(i).replace("\\", "")),
url = images.getString(i).replace("\\", ""),
preview = null,
source = source,
),
)
}
return pages
}
}

@ -7,7 +7,4 @@ import org.koitharu.kotatsu.parsers.site.mangareader.MangaReaderParser
@MangaSourceParser("SURYASCANS", "Surya Scans", "en")
internal class SuryaScans(context: MangaLoaderContext) :
MangaReaderParser(context, MangaSource.SURYASCANS, "suryascans.com", pageSize = 5, searchPageSize = 5) {
override val datePattern = "MMM d, yyyy"
}
MangaReaderParser(context, MangaSource.SURYASCANS, "suryareader.com", pageSize = 5, searchPageSize = 5)

@ -7,4 +7,4 @@ import org.koitharu.kotatsu.parsers.site.mangareader.MangaReaderParser
@MangaSourceParser("SEKAIKOMIK", "Sekai Komik", "id")
internal class SekaikomikParser(context: MangaLoaderContext) :
MangaReaderParser(context, MangaSource.SEKAIKOMIK, "sekaikomik.pro", pageSize = 20, searchPageSize = 100)
MangaReaderParser(context, MangaSource.SEKAIKOMIK, "sekaikomik.bio", pageSize = 20, searchPageSize = 100)

Loading…
Cancel
Save