Update WP MangaStream (#4631)

* add FlameScans

* update new Mangastream manga detail

* update ext version

* Fix chapter date on SheaManga and KomikAV

* keep old manga detail format for some sites

Some wpmangastream sites still use old version manga detail layout
This commit is contained in:
Riztard Lanthorn 2020-10-19 07:25:54 +07:00 committed by GitHub
parent 14012ba760
commit ba008579b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 32 additions and 9 deletions

View File

@ -5,7 +5,7 @@ ext {
extName = 'WP MangaStream (multiple sources)'
pkgNameSuffix = 'all.wpmangastream'
extClass = '.WPMangaStreamFactory'
extVersionCode = 27
extVersionCode = 28
libVersion = '1.2'
}

View File

@ -163,12 +163,21 @@ abstract class WPMangaStream(
override fun mangaDetailsParse(document: Document): SManga {
return SManga.create().apply {
document.select("div.bigcontent, div.animefull").firstOrNull()?.let { infoElement ->
genre = infoElement.select("span:contains(Genres:) a").joinToString { it.text() }
status = parseStatus(infoElement.select("span:contains(Status:)").firstOrNull()?.ownText())
author = infoElement.select("span:contains(Author:)").firstOrNull()?.ownText()
artist = author
description = infoElement.select("div.desc p").joinToString("\n") { it.text() }
genre = infoElement.select(".mgen a").joinToString { it.text() }
status = parseStatus(infoElement.select(".imptdt:contains(Status) i").firstOrNull()?.ownText())
author = infoElement.select(".fmed b:contains(Author)+span").firstOrNull()?.ownText()
artist = infoElement.select(".fmed b:contains(Artist)+span").firstOrNull()?.ownText()
description = infoElement.select("div.entry-content p").joinToString("\n") { it.text() }
thumbnail_url = infoElement.select("div.thumb img").imgAttr()
// Some wpmangastream sites still use old wpmangastream manga detail layout
if (author == artist && artist == null) {
genre = infoElement.select("span:contains(Genres:) a").joinToString { it.text() }
status = parseStatus(infoElement.select("span:contains(Status:)").firstOrNull()?.ownText())
author = infoElement.select("span:contains(Author:)").firstOrNull()?.ownText()
artist = author
description = infoElement.select("div.desc p").joinToString("\n") { it.text() }
}
}
}
}

View File

@ -51,11 +51,19 @@ class WPMangaStreamFactory : SourceFactory {
Mangakyo(),
AsuraScans(),
SilenceScan(),
SheaManga()
SheaManga(),
FlameScans()
)
}
class SheaManga : WPMangaStream("Shea Manga", "https://sheamanga.my.id", "id")
class FlameScans : WPMangaStream("Flame Scans", "https://www.flame-scans.com", "en")
class SheaManga : WPMangaStream(
"Shea Manga",
"https://sheamanga.my.id",
"id",
dateFormat = SimpleDateFormat("MMMM dd, yyyy", Locale.forLanguageTag("id"))
)
class AsuraScans : WPMangaStream("AsuraScans", "https://asurascans.com", "en")
@ -68,7 +76,13 @@ class Kiryuu : WPMangaStream("Kiryuu (WP Manga Stream)", "https://kiryuu.co", "i
.mapIndexed { i, image -> Page(i, "", image) }
}
}
class KomikAV : WPMangaStream("Komik AV (WP Manga Stream)", "https://komikav.com", "id")
class KomikAV : WPMangaStream(
"Komik AV (WP Manga Stream)",
"https://komikav.com",
"id",
dateFormat = SimpleDateFormat("MMMM dd, yyyy", Locale.forLanguageTag("id"))
)
class KomikStation : WPMangaStream("Komik Station (WP Manga Stream)", "https://komikstation.com", "id")