Minor fix
This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user