WP MangaStream fix westManga (#5483)
their tweaked site return to default format
This commit is contained in:
		
							parent
							
								
									72b76d70d2
								
							
						
					
					
						commit
						9dfdc222a8
					
				| @ -5,7 +5,7 @@ ext { | ||||
|     extName = 'WP MangaStream (multiple sources)' | ||||
|     pkgNameSuffix = 'all.wpmangastream' | ||||
|     extClass = '.WPMangaStreamFactory' | ||||
|     extVersionCode = 46 | ||||
|     extVersionCode = 47 | ||||
|     libVersion = '1.2' | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -198,144 +198,79 @@ class KomikCast : WPMangaStream("Komik Cast (WP Manga Stream)", "https://komikca | ||||
|         GenreListFilter(getGenreList()) | ||||
|     ) | ||||
| } | ||||
| 
 | ||||
| class WestManga : WPMangaStream("West Manga (WP Manga Stream)", "https://westmanga.info", "id") { | ||||
|     override fun popularMangaRequest(page: Int): Request { | ||||
|         val url = if (page == 1) "$baseUrl/manga-list/?popular" else "$baseUrl/manga-list/page/$page/?popular" | ||||
|         return GET(url, headers) | ||||
|     } | ||||
| 
 | ||||
|     override fun latestUpdatesRequest(page: Int): Request { | ||||
|         val url = if (page == 1) "$baseUrl/manga-list/?latest" else "$baseUrl/manga-list/page/$page/?latest" | ||||
|         return GET(url, headers) | ||||
|     } | ||||
| 
 | ||||
|     override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { | ||||
|         var builtUrl = if (page == 1) "$baseUrl/manga/" else "$baseUrl/manga/page/$page/" | ||||
|         if (query != "") { | ||||
|             builtUrl = if (page == 1) "$baseUrl/?s=$query&post_type=manga" else "$baseUrl/page/2/?s=$query&post_type=manga" | ||||
|         } else if (filters.size > 0) { | ||||
|             filters.forEach { filter -> | ||||
|                 when (filter) { | ||||
|                     is SortByFilter -> { | ||||
|                         builtUrl = if (page == 1) "$baseUrl/manga-list/?" + filter.toUriPart() else "$baseUrl/manga-list/page/$page/?" + filter.toUriPart() | ||||
|                     } | ||||
|                     is GenreListFilter -> { | ||||
|                         builtUrl = if (page == 1) "$baseUrl/genre/" + filter.toUriPart() else "$baseUrl/genre/" + filter.toUriPart() + "/page/$page/" | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         val url = HttpUrl.parse(builtUrl)!!.newBuilder() | ||||
|         return GET(url.build().toString(), headers) | ||||
|     } | ||||
| 
 | ||||
|     override fun popularMangaSelector() = "div.result-search" | ||||
| 
 | ||||
|     override fun popularMangaFromElement(element: Element): SManga { | ||||
|         val manga = SManga.create() | ||||
|         manga.thumbnail_url = element.select("div.fletch > .img_search > img").attr("src") | ||||
|         element.select(".kanan_search > .search_title > .titlex > a").first().let { | ||||
|             manga.setUrlWithoutDomain(it.attr("href")) | ||||
|             manga.title = it.text() | ||||
|         } | ||||
|         return manga | ||||
|     } | ||||
| 
 | ||||
|     override fun popularMangaNextPageSelector() = ".paginado>ul>li.dd + li.a" | ||||
| 
 | ||||
|     override fun mangaDetailsParse(document: Document): SManga { | ||||
|         val infoElement = document.select("table.attr").first() | ||||
|         val descElement = document.select("div.sin").first() | ||||
|         val sepName = infoElement.select("tr:nth-child(5)>td").first() | ||||
|         val manga = SManga.create() | ||||
|         manga.author = sepName.text() | ||||
|         manga.artist = sepName.text() | ||||
|         val genres = mutableListOf<String>() | ||||
|         infoElement.select("tr:nth-child(6)>td > a").forEach { element -> | ||||
|             val genre = element.text() | ||||
|             genres.add(genre) | ||||
|         } | ||||
|         manga.genre = genres.joinToString(", ") | ||||
|         manga.status = parseStatus(infoElement.select("tr:nth-child(4)>td").text()) | ||||
|         manga.description = descElement.select("p").text() | ||||
|         manga.thumbnail_url = document.select(".topinfo > img").attr("src") | ||||
|         return manga | ||||
|     } | ||||
| 
 | ||||
|     private class SortByFilter : UriPartFilter( | ||||
|         "Sort By", | ||||
|         arrayOf( | ||||
|             Pair("Default", ""), | ||||
|             Pair("A-Z", "A-Z"), | ||||
|             Pair("Latest Added", "latest"), | ||||
|             Pair("Popular", "popular") | ||||
|         ) | ||||
|     ) | ||||
| 
 | ||||
|     private class GenreListFilter : UriPartFilter( | ||||
|         "Genre", | ||||
|         arrayOf( | ||||
|             Pair("Default", ""), | ||||
|             Pair("4-Koma", "4-koma"), | ||||
|             Pair("Action", "action"), | ||||
|             Pair("Adventure", "adventure"), | ||||
|             Pair("Comedy", "comedy"), | ||||
|             Pair("Cooking", "cooking"), | ||||
|             Pair("Demons", "demons"), | ||||
|             Pair("Drama", "drama"), | ||||
|             Pair("Ecchi", "ecchi"), | ||||
|             Pair("Fantasy", "fantasy"), | ||||
|             Pair("FantasyAction", "fantasyaction"), | ||||
|             Pair("Game", "game"), | ||||
|             Pair("Gender Bender", "gender-bender"), | ||||
|             Pair("Gore", "gore"), | ||||
|             Pair("Harem", "harem"), | ||||
|             Pair("Historical", "historical"), | ||||
|             Pair("Horro", "horro"), | ||||
|             Pair("Horror", "horror"), | ||||
|             Pair("Isekai", "isekai"), | ||||
|             Pair("Isekai Action", "isekai-action"), | ||||
|             Pair("Josei", "josei"), | ||||
|             Pair("Magic", "magic"), | ||||
|             Pair("Manga", "manga"), | ||||
|             Pair("Manhua", "manhua"), | ||||
|             Pair("Martial arts", "martial-arts"), | ||||
|             Pair("Mature", "mature"), | ||||
|             Pair("Mecha", "mecha"), | ||||
|             Pair("Medical", "medical"), | ||||
|             Pair("Music", "music"), | ||||
|             Pair("Mystery", "mystery"), | ||||
|             Pair("Oneshot", "oneshot"), | ||||
|             Pair("Project", "project"), | ||||
|             Pair("Psychological", "psychological"), | ||||
|             Pair("Romance", "romance"), | ||||
|             Pair("School", "school"), | ||||
|             Pair("School life", "school-life"), | ||||
|             Pair("Sci fi", "sci-fi"), | ||||
|             Pair("Seinen", "seinen"), | ||||
|             Pair("Shoujo", "shoujo"), | ||||
|             Pair("Shoujo Ai", "shoujo-ai"), | ||||
|             Pair("Shounen", "shounen"), | ||||
|             Pair("Slice of Life", "slice-of-life"), | ||||
|             Pair("Sports", "sports"), | ||||
|             Pair("Super Power", "super-power"), | ||||
|             Pair("Supernatural", "supernatural"), | ||||
|             Pair("Suspense", "suspense"), | ||||
|             Pair("Thriller", "thriller"), | ||||
|             Pair("Tragedy", "tragedy"), | ||||
|             Pair("Vampire", "vampire"), | ||||
|             Pair("Webtoons", "webtoons"), | ||||
|             Pair("Yuri", "yuri") | ||||
|         ) | ||||
|     ) | ||||
| 
 | ||||
|     override fun getFilterList() = FilterList( | ||||
|         Filter.Header("NOTE: sort and genre can't be combined and ignored when using text search!"), | ||||
|         Filter.Separator(), | ||||
|         SortByFilter(), | ||||
|         GenreListFilter() | ||||
|     override fun getGenreList(): List<Genre> = listOf( | ||||
|         Genre("4 Koma", "344"), | ||||
|         Genre("Action", "13"), | ||||
|         Genre("Adventure", "4"), | ||||
|         Genre("Anthology", "1494"), | ||||
|         Genre("Comedy", "5"), | ||||
|         Genre("Cooking", "54"), | ||||
|         Genre("Crime", "856"), | ||||
|         Genre("Crossdressing", "1306"), | ||||
|         Genre("Demon", "64"), | ||||
|         Genre("Drama", "6"), | ||||
|         Genre("Ecchi", "14"), | ||||
|         Genre("Fantasy", "7"), | ||||
|         Genre("Game", "36"), | ||||
|         Genre("Gender Bender", "149"), | ||||
|         Genre("Genderswap", "157"), | ||||
|         Genre("Gore", "56"), | ||||
|         Genre("Gyaru", "812"), | ||||
|         Genre("Harem", "17"), | ||||
|         Genre("Historical", "44"), | ||||
|         Genre("Horror", "211"), | ||||
|         Genre("Isekai", "20"), | ||||
|         Genre("Isekai Action", "742"), | ||||
|         Genre("Josei", "164"), | ||||
|         Genre("Magic", "65"), | ||||
|         Genre("Manga", "268"), | ||||
|         Genre("Manhua", "32"), | ||||
|         Genre("Martial Art", "754"), | ||||
|         Genre("Martial Arts", "8"), | ||||
|         Genre("Mature", "46"), | ||||
|         Genre("Mecha", "22"), | ||||
|         Genre("Medical", "704"), | ||||
|         Genre("Medy", "1439"), | ||||
|         Genre("Monsters", "91"), | ||||
|         Genre("Music", "457"), | ||||
|         Genre("Mystery", "30"), | ||||
|         Genre("Office Workers", "1501"), | ||||
|         Genre("Oneshot", "405"), | ||||
|         Genre("Project", "313"), | ||||
|         Genre("Psychological", "23"), | ||||
|         Genre("Reincarnation", "57"), | ||||
|         Genre("Reinkarnasi", "1170"), | ||||
|         Genre("Romance", "15"), | ||||
|         Genre("School", "102"), | ||||
|         Genre("School Life", "9"), | ||||
|         Genre("Sci-fi", "33"), | ||||
|         Genre("Seinen", "18"), | ||||
|         Genre("Shotacon", "1070"), | ||||
|         Genre("Shoujo", "110"), | ||||
|         Genre("Shoujo Ai", "113"), | ||||
|         Genre("Shounen", "10"), | ||||
|         Genre("Shounen Ai", "shounen-ai"), | ||||
|         Genre("Si-fi", "776"), | ||||
|         Genre("Slice of Lif", "773"), | ||||
|         Genre("Slice of Life", "11"), | ||||
|         Genre("Smut", "586"), | ||||
|         Genre("Sports", "103"), | ||||
|         Genre("Super Power", "274"), | ||||
|         Genre("Supernatural", "34"), | ||||
|         Genre("Suspense", "181"), | ||||
|         Genre("Thriller", "170"), | ||||
|         Genre("Tragedy", "92"), | ||||
|         Genre("Urban", "1050"), | ||||
|         Genre("Vampire", "160"), | ||||
|         Genre("Video Games", "1093"), | ||||
|         Genre("Webtoons", "486"), | ||||
|         Genre("Yaoi", "yaoi"), | ||||
|         Genre("Zombies", "377") | ||||
|     ) | ||||
| } | ||||
| 
 | ||||
| class KomikGo : WPMangaStream("Komik GO (WP Manga Stream)", "https://komikgo.com", "id") { | ||||
| 
 | ||||
|     override fun popularMangaRequest(page: Int): Request { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Riztard Lanthorn
						Riztard Lanthorn