Madara - add sources, fix some chapter lists (#4153)
* Madara - add sources * fix some chapters, remove Indiancomicsonline * Add Wakascan
This commit is contained in:
parent
524562993c
commit
dfc91f27b2
@ -5,7 +5,7 @@ ext {
|
|||||||
extName = 'Madara (multiple sources)'
|
extName = 'Madara (multiple sources)'
|
||||||
pkgNameSuffix = "all.madara"
|
pkgNameSuffix = "all.madara"
|
||||||
extClass = '.MadaraFactory'
|
extClass = '.MadaraFactory'
|
||||||
extVersionCode = 127
|
extVersionCode = 128
|
||||||
libVersion = '1.2'
|
libVersion = '1.2'
|
||||||
containsNsfw = true
|
containsNsfw = true
|
||||||
}
|
}
|
||||||
|
@ -379,7 +379,7 @@ abstract class Madara(
|
|||||||
|
|
||||||
override fun chapterListParse(response: Response): List<SChapter> {
|
override fun chapterListParse(response: Response): List<SChapter> {
|
||||||
val document = response.asJsoup()
|
val document = response.asJsoup()
|
||||||
val dataIdSelector = "div#manga-chapters-holder"
|
val dataIdSelector = "div[id^=manga-chapters-holder]"
|
||||||
|
|
||||||
return document.select(chapterListSelector())
|
return document.select(chapterListSelector())
|
||||||
.let { elements ->
|
.let { elements ->
|
||||||
|
@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.extension.all.madara
|
|||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import eu.kanade.tachiyomi.annotations.Nsfw
|
import eu.kanade.tachiyomi.annotations.Nsfw
|
||||||
import eu.kanade.tachiyomi.network.GET
|
import eu.kanade.tachiyomi.network.GET
|
||||||
|
import eu.kanade.tachiyomi.network.POST
|
||||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||||
import eu.kanade.tachiyomi.source.Source
|
import eu.kanade.tachiyomi.source.Source
|
||||||
import eu.kanade.tachiyomi.source.SourceFactory
|
import eu.kanade.tachiyomi.source.SourceFactory
|
||||||
@ -46,7 +47,6 @@ class MadaraFactory : SourceFactory {
|
|||||||
Hiperdex(),
|
Hiperdex(),
|
||||||
HunterFansub(),
|
HunterFansub(),
|
||||||
IchirinNoHanaYuri(),
|
IchirinNoHanaYuri(),
|
||||||
Indiancomicsonline(),
|
|
||||||
IsekaiScanCom(),
|
IsekaiScanCom(),
|
||||||
JustForFun(),
|
JustForFun(),
|
||||||
KingzManga(),
|
KingzManga(),
|
||||||
@ -151,7 +151,17 @@ class MadaraFactory : SourceFactory {
|
|||||||
ToonilyNet(),
|
ToonilyNet(),
|
||||||
BestManga(),
|
BestManga(),
|
||||||
TwilightScans(),
|
TwilightScans(),
|
||||||
DetectiveConanAr()
|
DetectiveConanAr(),
|
||||||
|
WordExcerpt(),
|
||||||
|
WoopRead(),
|
||||||
|
Ninjavi(),
|
||||||
|
ManhwaTop(),
|
||||||
|
ImmortalUpdates(),
|
||||||
|
Bakaman(),
|
||||||
|
CatTranslator(),
|
||||||
|
ComicsValley(),
|
||||||
|
FriendlyTranslations(),
|
||||||
|
Wakascan()
|
||||||
// Removed by request of site owner
|
// Removed by request of site owner
|
||||||
// EarlyManga(),
|
// EarlyManga(),
|
||||||
// MangaGecesi(),
|
// MangaGecesi(),
|
||||||
@ -307,8 +317,6 @@ class ManwahentaiMe : Madara("Manwahentai.me", "https://manhwahentai.me", "en")
|
|||||||
|
|
||||||
class Manga3asq : Madara("مانجا العاشق", "https://3asq.org", "ar")
|
class Manga3asq : Madara("مانجا العاشق", "https://3asq.org", "ar")
|
||||||
|
|
||||||
class Indiancomicsonline : Madara("Indian Comics Online", "http://www.indiancomicsonline.com", "hi")
|
|
||||||
|
|
||||||
class AdonisFansub : Madara("Adonis Fansub", "https://manga.adonisfansub.com", "tr") {
|
class AdonisFansub : Madara("Adonis Fansub", "https://manga.adonisfansub.com", "tr") {
|
||||||
override val userAgentRandomizer = ""
|
override val userAgentRandomizer = ""
|
||||||
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/manga/page/$page/?m_orderby=views", headers)
|
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/manga/page/$page/?m_orderby=views", headers)
|
||||||
@ -334,6 +342,7 @@ class GetManhwa : Madara("GetManhwa", "https://getmanhwa.co", "en") {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nsfw
|
||||||
class AllPornComic : Madara("AllPornComic", "https://allporncomic.com", "en") {
|
class AllPornComic : Madara("AllPornComic", "https://allporncomic.com", "en") {
|
||||||
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/manga/page/$page/?m_orderby=views", headers)
|
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/manga/page/$page/?m_orderby=views", headers)
|
||||||
override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/manga/page/$page/?m_orderby=latest", headers)
|
override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/manga/page/$page/?m_orderby=latest", headers)
|
||||||
@ -520,6 +529,7 @@ class Hiperdex : Madara("Hiperdex", "https://hiperdex.com", "en") {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nsfw
|
||||||
class DoujinHentai : Madara("DoujinHentai", "https://doujinhentai.net", "es", SimpleDateFormat("d MMM. yyyy", Locale.ENGLISH)) {
|
class DoujinHentai : Madara("DoujinHentai", "https://doujinhentai.net", "es", SimpleDateFormat("d MMM. yyyy", Locale.ENGLISH)) {
|
||||||
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/lista-manga-hentai?orderby=views&page=$page", headers)
|
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/lista-manga-hentai?orderby=views&page=$page", headers)
|
||||||
override fun popularMangaSelector() = "div.col-md-3 a"
|
override fun popularMangaSelector() = "div.col-md-3 a"
|
||||||
@ -851,6 +861,7 @@ class NeoxScanlator : Madara("Neox Scanlator", "https://neoxscans.com", "pt-BR",
|
|||||||
|
|
||||||
class MangaLord : Madara("Manga Lord", "https://mangalord.com", "en")
|
class MangaLord : Madara("Manga Lord", "https://mangalord.com", "en")
|
||||||
|
|
||||||
|
@Nsfw
|
||||||
class PornComix : Madara("PornComix", "https://www.porncomixonline.net", "en")
|
class PornComix : Madara("PornComix", "https://www.porncomixonline.net", "en")
|
||||||
|
|
||||||
class PMScans : Madara("PMScans", "http://www.pmscans.com", "en")
|
class PMScans : Madara("PMScans", "http://www.pmscans.com", "en")
|
||||||
@ -975,6 +986,7 @@ class ArangScans : Madara("Arang Scans", "https://www.arangscans.com", "en", Sim
|
|||||||
override fun latestUpdatesNextPageSelector(): String? = null
|
override fun latestUpdatesNextPageSelector(): String? = null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nsfw
|
||||||
class MangaHentai : Madara("Manga Hentai", "https://mangahentai.me", "en")
|
class MangaHentai : Madara("Manga Hentai", "https://mangahentai.me", "en")
|
||||||
|
|
||||||
class MangaPhoenix : Madara("Manga Diyari", "https://mangadiyari.com", "tr") {
|
class MangaPhoenix : Madara("Manga Diyari", "https://mangadiyari.com", "tr") {
|
||||||
@ -1207,3 +1219,46 @@ class BestManga : Madara("BestManga", "https://bestmanga.club", "ru", SimpleDate
|
|||||||
class TwilightScans : Madara("Twilight Scans", "https://twilightscans.com", "en")
|
class TwilightScans : Madara("Twilight Scans", "https://twilightscans.com", "en")
|
||||||
|
|
||||||
class DetectiveConanAr : Madara("شبكة كونان العربية", "https://www.manga.detectiveconanar.com", "ar")
|
class DetectiveConanAr : Madara("شبكة كونان العربية", "https://www.manga.detectiveconanar.com", "ar")
|
||||||
|
|
||||||
|
// mostly novels, doesn't include year in chapter dates (even for past years)
|
||||||
|
class WordExcerpt : Madara("Word Excerpt", "https://wordexcerpt.com", "en") {
|
||||||
|
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/archive/webtoon/page/$page/?m_orderby=views", headers)
|
||||||
|
override fun popularMangaNextPageSelector() = "div.nav-previous a"
|
||||||
|
override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/archive/webtoon/page/$page/?m_orderby=latest", headers)
|
||||||
|
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request = GET("$baseUrl/?s=the&post_type=wp-manga&genre[]=webtoon", headers)
|
||||||
|
override fun getFilterList(): FilterList = FilterList()
|
||||||
|
}
|
||||||
|
|
||||||
|
// mostly novels
|
||||||
|
class WoopRead : Madara("WoopRead", "https://woopread.com", "en") {
|
||||||
|
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/?s&post_type=wp-manga&genre[0]=manhua&genre[1]=manhwa&m_orderby=views", headers)
|
||||||
|
override fun popularMangaParse(response: Response) = searchMangaParse(response)
|
||||||
|
override fun latestUpdatesRequest(page: Int): Request = GET("$baseUrl/?s&post_type=wp-manga&genre[0]=manhua&genre[1]=manhwa&m_orderby=latest", headers)
|
||||||
|
override fun latestUpdatesParse(response: Response) = searchMangaParse(response)
|
||||||
|
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request =
|
||||||
|
GET("$baseUrl/?s=$query&post_type=wp-manga&genre[0]=manhua&genre[1]=manhwa&m_orderby=latest", headers)
|
||||||
|
override fun getFilterList(): FilterList = FilterList()
|
||||||
|
}
|
||||||
|
|
||||||
|
class Ninjavi : Madara("Ninjavi", "https://ninjavi.com", "ar")
|
||||||
|
|
||||||
|
class ManhwaTop : Madara("Manhwatop", "https://manhwatop.com", "en")
|
||||||
|
|
||||||
|
class ImmortalUpdates : Madara("Immortal Updates", "https://immortalupdates.com", "en")
|
||||||
|
|
||||||
|
class Bakaman : Madara("Bakaman", "https://bakaman.net", "th")
|
||||||
|
|
||||||
|
class CatTranslator : Madara("CAT-translator", "https://cat-translator.com", "th") {
|
||||||
|
override fun popularMangaRequest(page: Int): Request =
|
||||||
|
POST("$baseUrl/manga/wp-admin/admin-ajax.php", formHeaders, formBuilder(page, true).build(), CacheControl.FORCE_NETWORK)
|
||||||
|
override fun latestUpdatesRequest(page: Int): Request =
|
||||||
|
POST("$baseUrl/manga/wp-admin/admin-ajax.php", formHeaders, formBuilder(page, false).build(), CacheControl.FORCE_NETWORK)
|
||||||
|
override fun searchPage(page: Int): String = "manga/page/$page/"
|
||||||
|
}
|
||||||
|
|
||||||
|
@Nsfw
|
||||||
|
class ComicsValley : Madara("Comics Valley", "https://comicsvalley.com", "hi")
|
||||||
|
|
||||||
|
class FriendlyTranslations : Madara("Friendly Translations", "https://friendlytranslationsscan.website", "en")
|
||||||
|
|
||||||
|
class Wakascan : Madara("Wakascan", "https://wakascan.com", "fr")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user