Madara Updates (#4560)
* Update source_bug.md * Add NazarickScans * add mangaspark * add mangastarz * Add MysticalMerries * Add AniMangaEs * Add MangaNine and MarkScans * Update build.gradle: I remembered to do this! Co-authored-by: Carlos <2092019+CarlosEsco@users.noreply.github.com>
This commit is contained in:
parent
32a57e6bc8
commit
9603e6e80d
|
@ -5,7 +5,7 @@ ext {
|
|||
extName = 'Madara (multiple sources)'
|
||||
pkgNameSuffix = "all.madara"
|
||||
extClass = '.MadaraFactory'
|
||||
extVersionCode = 140
|
||||
extVersionCode = 141
|
||||
libVersion = '1.2'
|
||||
containsNsfw = true
|
||||
}
|
||||
|
|
|
@ -400,13 +400,15 @@ abstract class Madara(
|
|||
|
||||
open val chapterUrlSelector = "a"
|
||||
|
||||
open val chapterUrlSuffix = "?style=list"
|
||||
|
||||
override fun chapterFromElement(element: Element): SChapter {
|
||||
val chapter = SChapter.create()
|
||||
|
||||
with(element) {
|
||||
select(chapterUrlSelector).first()?.let { urlElement ->
|
||||
chapter.url = urlElement.attr("abs:href").let {
|
||||
it.substringBefore("?style=paged") + if (!it.endsWith("?style=list")) "?style=list" else ""
|
||||
it.substringBefore("?style=paged") + if (!it.endsWith(chapterUrlSuffix)) chapterUrlSuffix else ""
|
||||
}
|
||||
chapter.name = urlElement.text()
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ class MadaraFactory : SourceFactory {
|
|||
AdonisFansub(),
|
||||
AkuManga(),
|
||||
AllPornComic(),
|
||||
AniMangaEs(),
|
||||
AoCTranslations(),
|
||||
ArangScans(),
|
||||
ArazNovel(),
|
||||
|
@ -74,7 +75,6 @@ class MadaraFactory : SourceFactory {
|
|||
KlikManga(),
|
||||
KomikGo(),
|
||||
LilyManga(),
|
||||
LuxyScans(),
|
||||
Manga347(),
|
||||
Manga3asq(),
|
||||
Manga68(),
|
||||
|
@ -87,6 +87,7 @@ class MadaraFactory : SourceFactory {
|
|||
MangaKomi(),
|
||||
MangaLord(),
|
||||
MangaLandArabic(),
|
||||
MangaNine(),
|
||||
MangaPhoenix(),
|
||||
MangaRawr(),
|
||||
MangaRead(),
|
||||
|
@ -94,6 +95,8 @@ class MadaraFactory : SourceFactory {
|
|||
MangaRockTeam(),
|
||||
MangaRocky(),
|
||||
MangaScantrad(),
|
||||
MangaSpark(),
|
||||
MangaStarz(),
|
||||
MangaStream(),
|
||||
MangaSY(),
|
||||
MangaTX(),
|
||||
|
@ -119,10 +122,13 @@ class MadaraFactory : SourceFactory {
|
|||
ManyToon(),
|
||||
ManyToonClub(),
|
||||
ManyToonMe(),
|
||||
MarkScans(),
|
||||
MartialScans(),
|
||||
Milftoon(),
|
||||
MiracleScans(),
|
||||
MixedManga(),
|
||||
MysticalMerries(),
|
||||
NazarickScans(),
|
||||
NeoxScanlator(),
|
||||
NightComic(),
|
||||
NijiTranslations(),
|
||||
|
@ -260,8 +266,6 @@ class AoCTranslations : Madara("Agent of Change Translations", "https://aoc.moe"
|
|||
|
||||
class KomikGo : Madara("KomikGo", "https://komikgo.com", "id")
|
||||
|
||||
class LuxyScans : Madara("Luxy Scans", "https://luxyscans.com", "en")
|
||||
|
||||
class TsubakiNoScan : Madara(
|
||||
"Tsubaki No Scan",
|
||||
"https://tsubakinoscan.com",
|
||||
|
@ -1307,3 +1311,63 @@ class Kombatch : Madara("Kombatch", "https://kombatch.com", "id")
|
|||
class ProjetoScanlator : Madara("Projeto Scanlator", "https://projetoscanlator.com", "pt-BR", SimpleDateFormat("dd/MM/yyyy", Locale("pt", "BR")))
|
||||
|
||||
class HikariScan : Madara("Hikari Scan", "https://hikariscan.com.br", "pt-BR", SimpleDateFormat("dd 'de' MMMM 'de' yyyy", Locale("pt", "BR")))
|
||||
|
||||
class NazarickScans : Madara("Nazarick Scans", "https://nazarickscans.com", "en") {
|
||||
override fun popularMangaRequest(page: Int) = GET("$baseUrl/manga/page/$page/?m_orderby=trending", headers)
|
||||
override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/manga/page/$page/?m_orderby=trending", headers)
|
||||
override fun popularMangaNextPageSelector(): String? = null
|
||||
override fun latestUpdatesNextPageSelector(): String? = null
|
||||
}
|
||||
|
||||
class MangaSpark : Madara("MangaSpark", "https://mangaspark.com", "ar") {
|
||||
override fun popularMangaFromElement(element: Element): SManga {
|
||||
val manga = SManga.create()
|
||||
|
||||
with(element) {
|
||||
select(popularMangaUrlSelector).first()?.let {
|
||||
manga.setUrlWithoutDomain(it.attr("abs:href"))
|
||||
manga.title = it.ownText()
|
||||
}
|
||||
|
||||
select("img").first()?.let {
|
||||
manga.thumbnail_url = imageFromElement(it)?.replace("mangaspark", "mangalek")
|
||||
}
|
||||
}
|
||||
|
||||
return manga
|
||||
}
|
||||
}
|
||||
|
||||
class MangaStarz : Madara("Manga Starz", "https://mangastarz.com", "ar") {
|
||||
override fun popularMangaFromElement(element: Element): SManga {
|
||||
val manga = SManga.create()
|
||||
|
||||
with(element) {
|
||||
select(popularMangaUrlSelector).first()?.let {
|
||||
manga.setUrlWithoutDomain(it.attr("abs:href"))
|
||||
manga.title = it.ownText()
|
||||
}
|
||||
|
||||
select("img").first()?.let {
|
||||
manga.thumbnail_url = imageFromElement(it)?.replace("mangastarz", "mangalek")
|
||||
}
|
||||
}
|
||||
|
||||
return manga
|
||||
}
|
||||
}
|
||||
|
||||
class MysticalMerries : Madara("Mystical Merries", "https://mysticalmerries.com", "en") {
|
||||
override fun popularMangaRequest(page: Int) = GET("$baseUrl/genre/manhwa/page/$page/?m_orderby=trending", headers)
|
||||
override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/genre/manhwa/page/$page/?m_orderby=latest", headers)
|
||||
}
|
||||
|
||||
class AniMangaEs : Madara("AniMangaEs", "http://animangaes.com", "en") {
|
||||
override val pageListParseSelector = "div.text-left noscript"
|
||||
override val chapterUrlSuffix = ""
|
||||
override fun chapterListParse(response: Response): List<SChapter> = super.chapterListParse(response).reversed()
|
||||
}
|
||||
|
||||
class MangaNine : Madara("Manga Nine", "https://manganine.com", "en")
|
||||
|
||||
class MarkScans : Madara("Mark Scans", "https://markscans.online", "pt-BR")
|
||||
|
|
Loading…
Reference in New Issue