diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/en/ComicExtra.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/en/ComicExtra.kt index 82d0a4a5..579dd120 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/en/ComicExtra.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/en/ComicExtra.kt @@ -16,7 +16,7 @@ internal class ComicExtra(context: MangaLoaderContext) : PagedMangaParser(contex override val sortOrders: Set = EnumSet.of(SortOrder.POPULARITY, SortOrder.UPDATED, SortOrder.NEWEST) - override val configKeyDomain = ConfigKey.Domain("comicextra.net") + override val configKeyDomain = ConfigKey.Domain("comicextra.me") override val headers: Headers = Headers.Builder() .add("User-Agent", UserAgents.CHROME_DESKTOP) @@ -34,10 +34,11 @@ internal class ComicExtra(context: MangaLoaderContext) : PagedMangaParser(contex if (!tags.isNullOrEmpty()) { append(tag?.key.orEmpty()) if (page > 1) { + append("/") append(page) } } else if (!query.isNullOrEmpty()) { - append("comic-search?key=") + append("search?keyword=") append(query.urlEncoded()) if (page > 1) { append("&page=") @@ -55,9 +56,7 @@ internal class ComicExtra(context: MangaLoaderContext) : PagedMangaParser(contex } } } - val doc = webClient.httpGet(url).parseHtml() - return doc.select("div.movie-list-index div.cartoon-box").map { div -> val href = div.selectFirstOrThrow("a").attrAsRelativeUrl("href") Manga( @@ -134,8 +133,7 @@ internal class ComicExtra(context: MangaLoaderContext) : PagedMangaParser(contex override suspend fun getPages(chapter: MangaChapter): List { val fullUrl = chapter.url.toAbsoluteUrl(domain) val doc = webClient.httpGet(fullUrl).parseHtml() - - return doc.select(".chapter-container img.chapter_img").map { img -> + return doc.select(".chapter-container img").map { img -> val url = img.src()?.toRelativeUrl(domain) ?: img.parseFailed("Image src not found") MangaPage( id = generateUid(url), diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/madara/es/ManhwaLatino.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/madara/es/ManhwaLatino.kt index 1e6049a1..71679f05 100644 --- a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/madara/es/ManhwaLatino.kt +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/madara/es/ManhwaLatino.kt @@ -15,9 +15,9 @@ import java.text.SimpleDateFormat internal class ManhwaLatino(context: MangaLoaderContext) : MadaraParser(context, MangaSource.MANHWALATINO, "manhwa-latino.com", 10) { - override val datePattern = "dd 'de' MMMM" + override val datePattern = "MM/dd" override val withoutAjax = true - + override val selectPage = "div.page-break img.wp-manga-chapter-img" override suspend fun getChapters(manga: Manga, doc: Document): List { val root2 = doc.body().selectFirstOrThrow("div.content-area") val dateFormat = SimpleDateFormat(datePattern, sourceLocale) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/mangareader/ar/KingOfManga.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/mangareader/ar/KingOfManga.kt new file mode 100644 index 00000000..c1454390 --- /dev/null +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/mangareader/ar/KingOfManga.kt @@ -0,0 +1,10 @@ +package org.koitharu.kotatsu.parsers.site.mangareader.ar + +import org.koitharu.kotatsu.parsers.MangaLoaderContext +import org.koitharu.kotatsu.parsers.MangaSourceParser +import org.koitharu.kotatsu.parsers.model.MangaSource +import org.koitharu.kotatsu.parsers.site.mangareader.MangaReaderParser + +@MangaSourceParser("KINGOFMANGA", "KingOfManga", "ar") +internal class KingOfManga(context: MangaLoaderContext) : + MangaReaderParser(context, MangaSource.KINGOFMANGA, "kingofmanga.com", pageSize = 30, searchPageSize = 10) diff --git a/src/main/kotlin/org/koitharu/kotatsu/parsers/site/mangareader/id/Natsu.kt b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/mangareader/id/Natsu.kt new file mode 100644 index 00000000..810497fc --- /dev/null +++ b/src/main/kotlin/org/koitharu/kotatsu/parsers/site/mangareader/id/Natsu.kt @@ -0,0 +1,10 @@ +package org.koitharu.kotatsu.parsers.site.mangareader.id + +import org.koitharu.kotatsu.parsers.MangaLoaderContext +import org.koitharu.kotatsu.parsers.MangaSourceParser +import org.koitharu.kotatsu.parsers.model.MangaSource +import org.koitharu.kotatsu.parsers.site.mangareader.MangaReaderParser + +@MangaSourceParser("NATSU", "Natsu", "id") +internal class Natsu(context: MangaLoaderContext) : + MangaReaderParser(context, MangaSource.NATSU, "natsu.id", pageSize = 20, searchPageSize = 10)