add new source ( lise below )
fix multiple source. ( lise below ) update madra parser : -> new option on getListPage for take liste without Ajax -> add format date -> change defaut date parterne ( the news is most used by default on sites )
parent
06a043d290
commit
cbbdd13c8e
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("DRAGONTEA", "DragonTea", "en")
|
||||||
|
internal class DragonTea(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.DRAGONTEA, "dragontea.ink") {
|
||||||
|
|
||||||
|
override val datePattern = "MM/dd/yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("LEVIATANSCANS", "Leviatan Scans", "en")
|
||||||
|
internal class LeviatanScans(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.LEVIATANSCANS, "en.leviatanscans.com", 10)
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGA1ST", "Manga1st", "en")
|
||||||
|
internal class Manga1st(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGA1ST, "manga1st.online") {
|
||||||
|
|
||||||
|
override val datePattern = "d MMMM، yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGA68", "Manga68", "en")
|
||||||
|
internal class Manga68(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGA68, "manga68.com") {
|
||||||
|
|
||||||
|
override val withoutAjax = true
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGABAZ", "MangaBaz", "en")
|
||||||
|
internal class MangaBaz(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGABAZ, "mangabaz.net")
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGABOB", "MangaBob", "en")
|
||||||
|
internal class MangaBob(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGABOB, "mangabob.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGADODS", "MangaDods", "en")
|
||||||
|
internal class MangaDods(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGADODS, "www.mangadods.com") {
|
||||||
|
|
||||||
|
override val selectdesc = "div.description-summary"
|
||||||
|
override val datePattern = "dd-MMM"
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAFAST", "Manga Fast", "en")
|
||||||
|
internal class MangaFast(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAFAST, "manga-fast.com") {
|
||||||
|
|
||||||
|
override val datePattern = "d MMMM، yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAFORFREE", "MangaForFree", "en")
|
||||||
|
internal class MangaForFree(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAFORFREE, "mangaforfree.com", 10) {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
override val isNsfwSource = true
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAFOXFULL", "MangaFoxFull", "en")
|
||||||
|
internal class MangaFoxFull(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAFOXFULL, "mangafoxfull.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAFREAK", "MangaFreak", "en")
|
||||||
|
internal class MangaFreak(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAFREAK, "mangafreak.online") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
override val datePattern = "dd MMMM، yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAGREAT", "MangaGreat", "en")
|
||||||
|
internal class MangaGreat(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAGREAT, "mangagreat.com")
|
||||||
@ -0,0 +1,15 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAHENTAI", "Manga Hentai", "en")
|
||||||
|
internal class MangaHentai(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAHENTAI, "mangahentai.me", 20) {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
override val tagPrefix = "manga-hentai-genre/"
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAKING", "MangaKing", "en")
|
||||||
|
internal class MangaKing(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAKING, "mangaking.net")
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAKIO", "Manga Kio", "en")
|
||||||
|
internal class MangaKio(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAKIO, "mangakio.me", 10)
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAKISS", "Manga Kiss", "en")
|
||||||
|
internal class MangaKiss(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAKISS, "mangakiss.org", 10)
|
||||||
@ -0,0 +1,17 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGALEVELING", "Manga Leveling", "en")
|
||||||
|
internal class MangaLeveling(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGALEVELING, "mangaleveling.com", 30) {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
override val tagPrefix = "comics-genre/"
|
||||||
|
override val datePattern = "MM/dd/yyyy"
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAMANIACS", "MangaManiacs", "en")
|
||||||
|
internal class MangaManiacs(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAMANIACS, "mangamaniacs.org", 10) {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAONLINETEAM", "Manga Online Team", "en")
|
||||||
|
internal class MangaOnlineTeam(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAONLINETEAM, "mangaonlineteam.com", 10)
|
||||||
@ -0,0 +1,15 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAREADCO", "Manga Read Co", "en")
|
||||||
|
internal class MangaReadCo(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAREADCO, "mangaread.co", 16) {
|
||||||
|
|
||||||
|
override val tagPrefix = "m-genre/"
|
||||||
|
override val datePattern = "yyyy-MM-dd"
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAREADING", "MangaReading", "en")
|
||||||
|
internal class MangaReading(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAREADING, "mangareading.org") {
|
||||||
|
|
||||||
|
override val datePattern = "dd.MM.yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAROCKY", "Manga Rocky", "en")
|
||||||
|
internal class MangaRocky(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAROCKY, "mangarocky.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAROLLS", "MangaRolls", "en")
|
||||||
|
internal class MangaRolls(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAROLLS, "mangarolls.net")
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGASUSHI", "MangaSushi", "en")
|
||||||
|
internal class MangaSushi(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGASUSHI, "mangasushi.org")
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGATONE", "MangaTone", "en")
|
||||||
|
internal class MangaTone(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGATONE, "mangatone.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGATXUNOFFICIAL", "Manga Tx ( Unofficial )", "en")
|
||||||
|
internal class MangaTxUnofficial(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGATXUNOFFICIAL, "manga-tx.com")
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAVISA", "MangaVisa", "en")
|
||||||
|
internal class MangaVisa(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAVISA, "mangavisa.com") {
|
||||||
|
|
||||||
|
override val withoutAjax = true
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAGG", "Mangagg", "en")
|
||||||
|
internal class Mangagg(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAGG, "mangagg.com") {
|
||||||
|
|
||||||
|
override val tagPrefix = "genre/"
|
||||||
|
override val datePattern = "MM/dd/yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAK2", "Mangak2", "en")
|
||||||
|
internal class Mangak2(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAK2, "mangak2.com", 10) {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGASTIC9", "Mangastic9", "en")
|
||||||
|
internal class Mangastic9(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGASTIC9, "mangastic.cc", 20)
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAUS", "Mangaus", "en")
|
||||||
|
internal class Mangaus(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAUS, "mangaus.xyz") {
|
||||||
|
|
||||||
|
override val withoutAjax = true
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANGAX1", "Mangax1", "en")
|
||||||
|
internal class Mangax1(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANGAX1, "mangax1.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAZONE", "ManhuaZone", "en")
|
||||||
|
internal class ManhuaZone(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAZONE, "manhuazone.net")
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAES", "Manhuaes", "en")
|
||||||
|
internal class Manhuaes(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAES, "manhuaes.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAFAST", "Manhuafast", "en")
|
||||||
|
internal class Manhuafast(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAFAST, "manhuafast.com")
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAGA", "Manhuaga", "en")
|
||||||
|
internal class Manhuaga(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAGA, "manhuaga.com")
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAHOT", "Manhuahot", "en")
|
||||||
|
internal class Manhuahot(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAHOT, "manhuahot.com", 10)
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAMIX", "Manhuamix", "en")
|
||||||
|
internal class Manhuamix(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAMIX, "manhuamix.com", 20) {
|
||||||
|
|
||||||
|
override val tagPrefix = "manhua-genre/"
|
||||||
|
}
|
||||||
@ -0,0 +1,39 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||||
|
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
||||||
|
import org.koitharu.kotatsu.parsers.exception.ParseException
|
||||||
|
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.madara.MadaraParser
|
||||||
|
import org.koitharu.kotatsu.parsers.util.domain
|
||||||
|
import org.koitharu.kotatsu.parsers.util.generateUid
|
||||||
|
import org.koitharu.kotatsu.parsers.util.parseFailed
|
||||||
|
import org.koitharu.kotatsu.parsers.util.parseHtml
|
||||||
|
import org.koitharu.kotatsu.parsers.util.toAbsoluteUrl
|
||||||
|
import org.koitharu.kotatsu.parsers.util.toRelativeUrl
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAPLUS", "Manhuaplus", "en")
|
||||||
|
internal class Manhuaplus(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAPLUS, "manhuaplus.com") {
|
||||||
|
|
||||||
|
override val withoutAjax = true
|
||||||
|
|
||||||
|
override suspend fun getPages(chapter: MangaChapter): List<MangaPage> {
|
||||||
|
val fullUrl = chapter.url.toAbsoluteUrl(domain)
|
||||||
|
val doc = webClient.httpGet(fullUrl).parseHtml()
|
||||||
|
val root = doc.body().selectFirst("div.main-col-inner")?.selectFirst("div.reading-content")
|
||||||
|
?: throw ParseException("Root not found", fullUrl)
|
||||||
|
return root.select("img").map { img ->
|
||||||
|
val url = img.src()?.toRelativeUrl(domain) ?: img.parseFailed("Image src not found")
|
||||||
|
MangaPage(
|
||||||
|
id = generateUid(url),
|
||||||
|
url = url,
|
||||||
|
preview = null,
|
||||||
|
source = source,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHUAUS", "Manhuaus", "en")
|
||||||
|
internal class Manhuaus(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHUAUS, "manhuaus.com")
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWA18APP", "Manhwa18 App", "en")
|
||||||
|
internal class Manhwa18App(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWA18APP, "manhwa18.app") {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
override val postreq = true
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWA18ORG", "Manhwa18 Org", "en")
|
||||||
|
internal class Manhwa18Org(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWA18ORG, "manhwa18.org") {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
override val postreq = true
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWA68", "Manhwa 68", "en")
|
||||||
|
internal class Manhwa68(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWA68, "manhwa68.com") {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
}
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWAFULL", "ManhwaFull", "en")
|
||||||
|
internal class ManhwaFull(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWAFULL, "manhwafull.com") {
|
||||||
|
|
||||||
|
override val datePattern = "MM/dd/yyyy"
|
||||||
|
}
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWAHENTAI", "Manhwa Hentai", "en")
|
||||||
|
internal class ManhwaHentai(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWAHENTAI, "manhwahentai.me", 20) {
|
||||||
|
|
||||||
|
override val isNsfwSource = true
|
||||||
|
override val tagPrefix = "webtoon-genre/"
|
||||||
|
}
|
||||||
@ -0,0 +1,58 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
import org.jsoup.nodes.Document
|
||||||
|
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.MangaSource
|
||||||
|
import org.koitharu.kotatsu.parsers.site.madara.MadaraParser
|
||||||
|
import org.koitharu.kotatsu.parsers.util.attrAsRelativeUrlOrNull
|
||||||
|
import org.koitharu.kotatsu.parsers.util.domain
|
||||||
|
import org.koitharu.kotatsu.parsers.util.generateUid
|
||||||
|
import org.koitharu.kotatsu.parsers.util.mapChapters
|
||||||
|
import org.koitharu.kotatsu.parsers.util.parseFailed
|
||||||
|
import org.koitharu.kotatsu.parsers.util.parseHtml
|
||||||
|
import java.text.SimpleDateFormat
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWATOP", "ManhwaTop", "en")
|
||||||
|
internal class ManhwaTop(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWATOP, "manhwatop.com") {
|
||||||
|
|
||||||
|
override val postreq = true
|
||||||
|
|
||||||
|
override suspend fun loadChapters(mangaUrl: String, document: Document): List<MangaChapter> {
|
||||||
|
|
||||||
|
val mangaId = document.select("div#manga-chapters-holder").attr("data-id")
|
||||||
|
val url = "https://$domain/wp-admin/admin-ajax.php"
|
||||||
|
val postdata = "action=manga_get_chapters&manga=$mangaId"
|
||||||
|
val doc = webClient.httpPost(url, postdata).parseHtml()
|
||||||
|
|
||||||
|
val dateFormat = SimpleDateFormat(datePattern, sourceLocale)
|
||||||
|
|
||||||
|
return doc.select(selectchapter).mapChapters(reversed = true) { i, li ->
|
||||||
|
val a = li.selectFirst("a")
|
||||||
|
val href = a?.attrAsRelativeUrlOrNull("href") ?: li.parseFailed("Link is missing")
|
||||||
|
val link = href + stylepage
|
||||||
|
val dateText = li.selectFirst("a.c-new-tag")?.attr("title") ?: li.selectFirst(selectdate)?.text()
|
||||||
|
val name = a.selectFirst("p")?.text() ?: a.ownText()
|
||||||
|
val dateText2 = if (dateText != "Complete") {
|
||||||
|
dateText
|
||||||
|
} else {
|
||||||
|
null
|
||||||
|
}
|
||||||
|
MangaChapter(
|
||||||
|
id = generateUid(href),
|
||||||
|
url = link,
|
||||||
|
name = name,
|
||||||
|
number = i + 1,
|
||||||
|
branch = null,
|
||||||
|
uploadDate = parseChapterDate(
|
||||||
|
dateFormat,
|
||||||
|
dateText2,
|
||||||
|
),
|
||||||
|
scanlator = null,
|
||||||
|
source = source,
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||||
|
|
||||||
|
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.madara.MadaraParser
|
||||||
|
|
||||||
|
@MangaSourceParser("MANHWAWORLD", "Manhwa World", "en")
|
||||||
|
internal class ManhwaWorld(context: MangaLoaderContext) :
|
||||||
|
MadaraParser(context, MangaSource.MANHWAWORLD, "manhwaworld.com")
|
||||||
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue