Madara - add BestManga, TwilightScans, remove dead sources (#3992)

This commit is contained in:
Mike 2020-08-03 00:51:20 -04:00 committed by GitHub
parent f28dfa6af4
commit b601658f73
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 20 deletions

View File

@ -5,7 +5,7 @@ ext {
extName = 'Madara (multiple sources)' extName = 'Madara (multiple sources)'
pkgNameSuffix = "all.madara" pkgNameSuffix = "all.madara"
extClass = '.MadaraFactory' extClass = '.MadaraFactory'
extVersionCode = 124 extVersionCode = 125
libVersion = '1.2' libVersion = '1.2'
} }

View File

@ -61,7 +61,7 @@ abstract class Madara(
with(element) { with(element) {
select(popularMangaUrlSelector).first()?.let { select(popularMangaUrlSelector).first()?.let {
manga.setUrlWithoutDomain(it.attr("href")) manga.setUrlWithoutDomain(it.attr("abs:href"))
manga.title = it.ownText() manga.title = it.ownText()
} }
@ -300,7 +300,7 @@ abstract class Madara(
with(element) { with(element) {
select("div.post-title a").first()?.let { select("div.post-title a").first()?.let {
manga.setUrlWithoutDomain(it.attr("href")) manga.setUrlWithoutDomain(it.attr("abs:href"))
manga.title = it.ownText() manga.title = it.ownText()
} }
select("img").first()?.let { select("img").first()?.let {

View File

@ -44,7 +44,6 @@ class MadaraFactory : SourceFactory {
FirstKissManga(), FirstKissManga(),
GetManhwa(), GetManhwa(),
GoldenManga(), GoldenManga(),
HappyTeaScans(),
Hiperdex(), Hiperdex(),
HunterFansub(), HunterFansub(),
IchirinNoHanaYuri(), IchirinNoHanaYuri(),
@ -97,17 +96,14 @@ class MadaraFactory : SourceFactory {
PornComix(), PornComix(),
RaiderScans(), RaiderScans(),
ReadManhua(), ReadManhua(),
TeabeerComics(),
ThreeSixtyFiveManga(), ThreeSixtyFiveManga(),
Toonily(), Toonily(),
TopManhua(), TopManhua(),
TsubakiNoScan(), TsubakiNoScan(),
UnknownScans(),
Wakamics(), Wakamics(),
WuxiaWorld(), WuxiaWorld(),
YaoiToshokan(), YaoiToshokan(),
YokaiJump(), YokaiJump(),
YoManga(),
ZinManga(), ZinManga(),
ZManga(), ZManga(),
MangaWT(), MangaWT(),
@ -116,7 +112,6 @@ class MadaraFactory : SourceFactory {
MixedManga(), MixedManga(),
ManhuasWorld(), ManhuasWorld(),
ArazNovel(), ArazNovel(),
MangaByte(),
ManhwaRaw(), ManhwaRaw(),
GuncelManga(), GuncelManga(),
WeScans(), WeScans(),
@ -154,7 +149,9 @@ class MadaraFactory : SourceFactory {
AkuManga(), AkuManga(),
AsgardTeam(), AsgardTeam(),
Skymanga(), Skymanga(),
ToonilyNet() ToonilyNet(),
BestManga(),
TwilightScans()
// Removed by request of site owner // Removed by request of site owner
// EarlyManga(), // EarlyManga(),
// MangaGecesi(), // MangaGecesi(),
@ -167,7 +164,21 @@ class AhStudios : Madara("AhStudios", "https://ahstudios.net", "es")
class AsuraScans : Madara("AsuraScans", "https://asurascans.com", "en") class AsuraScans : Madara("AsuraScans", "https://asurascans.com", "en")
class TritiniaScans : Madara("TritiniaScans", "https://tritiniaman.ga", "en") class TritiniaScans : Madara("TritiniaScans", "https://tritiniaman.ga", "en") {
// site is a bit broken
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/manga/index_m_orderby=views.html", headers)
override fun popularMangaNextPageSelector(): String? = null
override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/manga/index_m_orderby=latest.html", headers)
override fun latestUpdatesNextPageSelector(): String? = null
private val imageRegex = Regex(""""(http[^"]*)"""")
override fun pageListParse(document: Document): List<Page> {
val script = document.select("#chapter_preloaded_images").firstOrNull()?.data()
?: throw Exception("chapter_preloaded_images not found")
return imageRegex.findAll(script).asIterable().mapIndexed { i, mr ->
Page(i, "", mr.groupValues[1].replace("\\", ""))
}
}
}
class CopyPasteScan : Madara("CopyPasteScan", "https://copypastescan.xyz", "es") class CopyPasteScan : Madara("CopyPasteScan", "https://copypastescan.xyz", "es")
@ -182,8 +193,6 @@ class ReadManhua : Madara("ReadManhua", "https://readmanhua.net", "en",
class IsekaiScanCom : Madara("IsekaiScan.com", "https://isekaiscan.com", "en") class IsekaiScanCom : Madara("IsekaiScan.com", "https://isekaiscan.com", "en")
class HappyTeaScans : Madara("Happy Tea Scans", "https://happyteascans.com", "en")
class JustForFun : Madara("Just For Fun", "https://just-for-fun.ru", "ru", class JustForFun : Madara("Just For Fun", "https://just-for-fun.ru", "ru",
dateFormat = SimpleDateFormat("yy.MM.dd", Locale.US)) dateFormat = SimpleDateFormat("yy.MM.dd", Locale.US))
@ -263,8 +272,6 @@ class WuxiaWorld : Madara("WuxiaWorld", "https://wuxiaworld.site", "en") {
override fun popularMangaNextPageSelector() = "div.nav-previous.float-left" override fun popularMangaNextPageSelector() = "div.nav-previous.float-left"
} }
class YoManga : Madara("Yo Manga", "https://yomanga.info", "en")
class ManyToon : Madara("ManyToon", "https://manytoon.com", "en") class ManyToon : Madara("ManyToon", "https://manytoon.com", "en")
class ManyToonMe : Madara("ManyToon.me", "https://manytoon.me", "en") class ManyToonMe : Madara("ManyToon.me", "https://manytoon.me", "en")
@ -676,8 +683,6 @@ class MangaKomi : Madara("MangaKomi", "https://mangakomi.com", "en", SimpleDateF
class Wakamics : Madara("Wakamics", "https://wakamics.com", "en") class Wakamics : Madara("Wakamics", "https://wakamics.com", "en")
class TeabeerComics : Madara("Teabeer Comics", "https://teabeercomics.com", "en")
class KingzManga : Madara("KingzManga", "https://kingzmanga.com", "ar") class KingzManga : Madara("KingzManga", "https://kingzmanga.com", "ar")
class YaoiToshokan : Madara("Yaoi Toshokan", "https://yaoitoshokan.com.br", "pt-BR", SimpleDateFormat("dd MMM yyyy", Locale("pt", "BR"))) { class YaoiToshokan : Madara("Yaoi Toshokan", "https://yaoitoshokan.com.br", "pt-BR", SimpleDateFormat("dd MMM yyyy", Locale("pt", "BR"))) {
@ -850,8 +855,6 @@ class PMScans : Madara("PMScans", "http://www.pmscans.com", "en")
class MangaRead : Madara("Manga Read", "https://mangaread.co", "en", SimpleDateFormat("yyyy-MM-dd", Locale.US)) class MangaRead : Madara("Manga Read", "https://mangaread.co", "en", SimpleDateFormat("yyyy-MM-dd", Locale.US))
class UnknownScans : Madara("Unknown Scans", "https://unknoscans.com", "en")
class Manga68 : Madara("Manga68", "https://manga68.com", "en") { class Manga68 : Madara("Manga68", "https://manga68.com", "en") {
override val pageListParseSelector = "div.page-break, div.text-left p" override val pageListParseSelector = "div.page-break, div.text-left p"
} }
@ -949,8 +952,6 @@ class ArazNovel : Madara("ArazNovel", "https://www.araznovel.com", "tr", SimpleD
} }
} }
class MangaByte : Madara("Manga Byte", "https://mangabyte.com", "en")
class ManhwaRaw : Madara("Manhwa Raw", "https://manhwaraw.com", "ko") class ManhwaRaw : Madara("Manhwa Raw", "https://manhwaraw.com", "ko")
class GuncelManga : Madara("GuncelManga", "https://guncelmanga.com", "tr") class GuncelManga : Madara("GuncelManga", "https://guncelmanga.com", "tr")
@ -1197,3 +1198,7 @@ class AsgardTeam : Madara("Asgard Team", "https://www.asgard1team.com", "ar")
class Skymanga : Madara("Skymanga", "https://skymanga.co", "en") class Skymanga : Madara("Skymanga", "https://skymanga.co", "en")
class ToonilyNet : Madara("Toonily.net", "https://toonily.net", "en") class ToonilyNet : Madara("Toonily.net", "https://toonily.net", "en")
class BestManga : Madara("BestManga", "https://bestmanga.club", "ru", SimpleDateFormat("dd.MM.yyyy", Locale.getDefault()))
class TwilightScans : Madara("Twilight Scans", "https://twilightscans.com", "en")