forked from recloudstream/cloudstream
		
	AnimeWorld: Improvements (#1148)
* AnimeWorld: Improvements * Minor changes
This commit is contained in:
		
							parent
							
								
									918136f8f0
								
							
						
					
					
						commit
						b39c030250
					
				
					 1 changed files with 6 additions and 15 deletions
				
			
		|  | @ -3,6 +3,7 @@ package com.lagradost.cloudstream3.animeproviders | ||||||
| import com.fasterxml.jackson.annotation.JsonProperty | import com.fasterxml.jackson.annotation.JsonProperty | ||||||
| import com.lagradost.cloudstream3.* | import com.lagradost.cloudstream3.* | ||||||
| import com.lagradost.cloudstream3.LoadResponse.Companion.addAniListId | import com.lagradost.cloudstream3.LoadResponse.Companion.addAniListId | ||||||
|  | import com.lagradost.cloudstream3.LoadResponse.Companion.addDuration | ||||||
| import com.lagradost.cloudstream3.LoadResponse.Companion.addMalId | import com.lagradost.cloudstream3.LoadResponse.Companion.addMalId | ||||||
| import com.lagradost.cloudstream3.LoadResponse.Companion.addRating | import com.lagradost.cloudstream3.LoadResponse.Companion.addRating | ||||||
| import com.lagradost.cloudstream3.LoadResponse.Companion.addTrailer | import com.lagradost.cloudstream3.LoadResponse.Companion.addTrailer | ||||||
|  | @ -119,16 +120,6 @@ class AnimeWorldProvider : MainAPI() { | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     override suspend fun load(url: String): LoadResponse { |     override suspend fun load(url: String): LoadResponse { | ||||||
|         fun String.parseDuration(): Int? { |  | ||||||
|             val arr = this.split(" e ") |  | ||||||
|             return if (arr.size == 1) |  | ||||||
|                 arr[0].split(' ')[0].toIntOrNull() |  | ||||||
|             else |  | ||||||
|                 arr[1].split(' ')[0].toIntOrNull()?.let { |  | ||||||
|                     arr[0].removeSuffix("h").toIntOrNull()?.times(60)!!.plus(it) |  | ||||||
|                 } |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         val document = request(url).document |         val document = request(url).document | ||||||
| 
 | 
 | ||||||
|         val widget = document.select("div.widget.info") |         val widget = document.select("div.widget.info") | ||||||
|  | @ -140,7 +131,7 @@ class AnimeWorldProvider : MainAPI() { | ||||||
| 
 | 
 | ||||||
|         val type: TvType = getType(widget.select("dd").first()?.text()) |         val type: TvType = getType(widget.select("dd").first()?.text()) | ||||||
|         val genres = widget.select(".meta").select("a[href*=\"/genre/\"]").map { it.text() } |         val genres = widget.select(".meta").select("a[href*=\"/genre/\"]").map { it.text() } | ||||||
|         val rating = widget.select("#average-vote")?.text() |         val rating = widget.select("#average-vote").text() | ||||||
| 
 | 
 | ||||||
|         val trailerUrl = document.select(".trailer[data-url]").attr("data-url") |         val trailerUrl = document.select(".trailer[data-url]").attr("data-url") | ||||||
|         val malId = document.select("#mal-button").attr("href") |         val malId = document.select("#mal-button").attr("href") | ||||||
|  | @ -151,7 +142,7 @@ class AnimeWorldProvider : MainAPI() { | ||||||
|         var dub = false |         var dub = false | ||||||
|         var year: Int? = null |         var year: Int? = null | ||||||
|         var status: ShowStatus? = null |         var status: ShowStatus? = null | ||||||
|         var duration: Int? = null |         var duration: String? = null | ||||||
| 
 | 
 | ||||||
|         for (meta in document.select(".meta dt, .meta dd")) { |         for (meta in document.select(".meta dt, .meta dd")) { | ||||||
|             val text = meta.text() |             val text = meta.text() | ||||||
|  | @ -162,7 +153,7 @@ class AnimeWorldProvider : MainAPI() { | ||||||
|             else if (status == null && text.contains("Stato")) |             else if (status == null && text.contains("Stato")) | ||||||
|                 status = getStatus(meta.nextElementSibling()?.text()) |                 status = getStatus(meta.nextElementSibling()?.text()) | ||||||
|             else if (status == null && text.contains("Durata")) |             else if (status == null && text.contains("Durata")) | ||||||
|                 duration = meta.nextElementSibling()?.text()?.parseDuration() |                 duration = meta.nextElementSibling()?.text() | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         val servers = document.select(".widget.servers") |         val servers = document.select(".widget.servers") | ||||||
|  | @ -183,7 +174,7 @@ class AnimeWorldProvider : MainAPI() { | ||||||
|         return newAnimeLoadResponse(title, url, type) { |         return newAnimeLoadResponse(title, url, type) { | ||||||
|             engName = title |             engName = title | ||||||
|             japName = otherTitle |             japName = otherTitle | ||||||
|             posterUrl = poster |             addPoster(poster) | ||||||
|             this.year = year |             this.year = year | ||||||
|             addEpisodes(if (dub) DubStatus.Dubbed else DubStatus.Subbed, episodes) |             addEpisodes(if (dub) DubStatus.Dubbed else DubStatus.Subbed, episodes) | ||||||
|             showStatus = status |             showStatus = status | ||||||
|  | @ -192,7 +183,7 @@ class AnimeWorldProvider : MainAPI() { | ||||||
|             addMalId(malId) |             addMalId(malId) | ||||||
|             addAniListId(anlId) |             addAniListId(anlId) | ||||||
|             addRating(rating) |             addRating(rating) | ||||||
|             this.duration = duration |             addDuration(duration) | ||||||
|             addTrailer(trailerUrl) |             addTrailer(trailerUrl) | ||||||
|             this.recommendations = recommendations |             this.recommendations = recommendations | ||||||
|             this.comingSoon = comingSoon |             this.comingSoon = comingSoon | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue