Fix HTTP error 404 and No results found in Madara sources (#16184)

Fix HTTP error 404 and No results found in Madara sources.
This commit is contained in:
Alessandro Jean 2023-04-25 14:20:21 -03:00 committed by GitHub
parent dc9ba9e008
commit ee5aad9758
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 29 additions and 8 deletions

View File

@ -4,7 +4,14 @@ import eu.kanade.tachiyomi.multisrc.madara.Madara
import java.text.SimpleDateFormat
import java.util.Locale
class DrakeScans : Madara("Drake Scans", "https://drakescans.com", "en", SimpleDateFormat("MM/dd/yyyy", Locale.US)) {
class DrakeScans : Madara(
"Drake Scans",
"https://drakescans.com",
"en",
SimpleDateFormat("MM/dd/yyyy", Locale.US),
) {
override val mangaDetailsSelectorTag = ""
override val mangaSubString = "series"
}

View File

@ -5,4 +5,6 @@ import eu.kanade.tachiyomi.multisrc.madara.Madara
class ManhwahentaiMe : Madara("Manhwahentai.me", "https://manhwahentai.me", "en") {
override val useNewChapterEndpoint: Boolean = true
override val mangaSubString = "webtoon"
}

View File

@ -6,6 +6,10 @@ import eu.kanade.tachiyomi.source.model.SManga
import org.jsoup.nodes.Element
class MMScans : Madara("MMScans", "https://mm-scans.org", "en") {
// The site customized the listing and does not include a .manga class.
override val filterNonMangaItems = false
override val popularMangaUrlSelector = "div.item-summary a"
override fun chapterListSelector() = "li.chapter-li"
override fun searchMangaSelector() = "a"

View File

@ -9,6 +9,8 @@ class Shinigami : Madara("Shinigami", "https://shinigami.id", "id") {
// moved from Reaper Scans (id) to Shinigami (id)
override val id = 3411809758861089969
override val mangaSubString = "series"
// Tags are useless as they are just SEO keywords.
override val mangaDetailsSelectorTag = ""

View File

@ -28,6 +28,8 @@ class YugenMangas : Madara(
override val useNewChapterEndpoint: Boolean = true
override val mangaSubString = "series"
override fun chapterFromElement(element: Element): SChapter = SChapter.create().apply {
name = element.selectFirst("p.chapter-manhwa-title")!!.text()
date_upload = parseChapterDate(element.selectFirst("span.chapter-release-date i")?.text())

View File

@ -178,6 +178,12 @@ abstract class Madara(
*/
protected open val fetchGenres: Boolean = true
/**
* The path used in the URL for the manga pages. Can be
* changed if needed as some sites modify it to other words.
*/
protected open val mangaSubString = "manga"
override fun headersBuilder(): Headers.Builder = Headers.Builder()
.add("Referer", "$baseUrl/")
@ -247,8 +253,6 @@ abstract class Madara(
// Search Manga
open val mangaSubString = "manga"
override fun fetchSearchManga(page: Int, query: String, filters: FilterList): Observable<MangasPage> {
if (query.startsWith(URL_SEARCH_PREFIX)) {
val mangaUrl = "$baseUrl/$mangaSubString/${query.substringAfter(URL_SEARCH_PREFIX)}"

View File

@ -82,7 +82,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("DokkoManga", "https://dokkomanga.xyz", "es"),
SingleLang("DoujinHentai", "https://doujinhentai.net", "es", isNsfw = true, overrideVersionCode = 1),
SingleLang("DragonTranslation", "https://dragontranslation.com", "es", isNsfw = true, overrideVersionCode = 4),
SingleLang("Drake Scans", "https://drakescans.com", "en", overrideVersionCode = 2),
SingleLang("Drake Scans", "https://drakescans.com", "en", overrideVersionCode = 3),
SingleLang("Dream Manga", "https://www.swarmmanga.com", "en", overrideVersionCode = 3),
SingleLang("Drope Scan", "https://dropescan.com", "pt-BR", overrideVersionCode = 4),
SingleLang("EGY Manga", "https://egymanga.net", "ar", overrideVersionCode = 1),
@ -290,7 +290,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("ManhwaBookShelf", "https://manhwabookshelf.com", "en"),
SingleLang("ManhwaClan", "https://manhwaclan.com", "en"),
SingleLang("Manhwafull", "https://manhwafull.com", "en", overrideVersionCode = 1),
SingleLang("Manhwahentai.me", "https://manhwahentai.me", "en", className = "ManhwahentaiMe", isNsfw = true, overrideVersionCode = 2),
SingleLang("Manhwahentai.me", "https://manhwahentai.me", "en", className = "ManhwahentaiMe", isNsfw = true, overrideVersionCode = 3),
SingleLang("Manhwas Men", "https://manhwas.men", "en", className = "ManhwasMen", isNsfw = true),
SingleLang("ManhwaTime", "https://manhwatime.com", "ar"),
SingleLang("Manhwatop", "https://manhwatop.com", "en", overrideVersionCode = 2),
@ -310,7 +310,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("Mirad Scanlator", "https://miradscanlator.site", "pt-BR", overrideVersionCode = 1),
SingleLang("Mixed Manga", "https://mixedmanga.com", "en", overrideVersionCode = 1),
SingleLang("Mizu Mangás", "https://mizumangas.com.br", "pt-BR", isNsfw = true, className = "MizuMangas"),
SingleLang("MMScans", "https://mm-scans.org", "en", overrideVersionCode = 4),
SingleLang("MMScans", "https://mm-scans.org", "en", overrideVersionCode = 5),
SingleLang("Momo no Hana Scan", "https://momonohanascan.com", "pt-BR", className = "MomoNoHanaScan", overrideVersionCode = 1),
SingleLang("MonarcaManga", "https://monarcamanga.com", "es"),
SingleLang("Moon Witch In Love", "https://moonwitchinlovescan.com", "pt-BR"),
@ -377,7 +377,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("Shayami", "https://shayami.com", "es"),
SingleLang("Shield Manga", "https://shieldmanga.io", "en", overrideVersionCode = 3),
SingleLang("Shimada Scans", "https://shimadascans.com", "en"),
SingleLang("Shinigami", "https://shinigami.id", "id"),
SingleLang("Shinigami", "https://shinigami.id", "id", overrideVersionCode = 1),
SingleLang("Shirai Scans", "https://shiraiscans.com.br", "pt-BR"),
SingleLang("Shooting Star Scans", "https://shootingstarscans.com", "en"),
SingleLang("ShoujoHearts", "https://shoujohearts.com", "en", overrideVersionCode = 2),
@ -445,7 +445,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("YaoiScan", "https://yaoiscan.com", "en", isNsfw = true),
SingleLang("YaoiToon", "https://yaoitoon.com", "en", isNsfw = true),
SingleLang("YonaBar", "https://yonabar.com", "ar", isNsfw = true, overrideVersionCode = 2),
SingleLang("YugenMangas", "https://yugenmangas.com.br", "pt-BR", overrideVersionCode = 1),
SingleLang("YugenMangas", "https://yugenmangas.com.br", "pt-BR", overrideVersionCode = 2),
SingleLang("Yuri Verso", "https://yuri.live", "pt-BR", overrideVersionCode = 3),
SingleLang("Zero Scan", "https://zeroscan.com.br", "pt-BR", isNsfw = true),
SingleLang("ZinChanManga", "https://zinchanmanga.com", "en", isNsfw = true),