fixed Kickassanime, Kuramanime and added duration in SoraStream

This commit is contained in:
hexated 2023-02-04 14:44:26 +07:00
parent c4a5dfe065
commit 4e68bcf923
5 changed files with 13 additions and 8 deletions

View File

@ -1,5 +1,5 @@
// use an integer for version numbers
version = 8
version = 9
cloudstream {

View File

@ -23,7 +23,7 @@ suspend fun String.fixIframe(): List<Pair<String?, String?>> {
val source = decode(
this.substringAfter("&data=").substringBefore("&vref=")
)
listOf(URI(source).host.substringBefore(".") to source)
listOf("gogo" to source)
}
else -> {
emptyList()

View File

@ -1,5 +1,5 @@
// use an integer for version numbers
version = 8
version = 9
cloudstream {

View File

@ -118,11 +118,14 @@ class KuramanimeProvider : MainAPI() {
for (i in 1..6) {
val doc = app.get("$url?page=$i").document
val eps = Jsoup.parse(doc.select("#episodeLists").attr("data-content")).select("a").mapNotNull {
val name = it.text().trim()
val link = it.attr("href")
Episode(link, name)
}.filter { it.name?.contains(Regex("(?i)(Terlama)|(Terbaru)")) == false }
val eps = Jsoup.parse(doc.select("#episodeLists").attr("data-content")).select("a.btn.btn-sm.btn-danger")
.mapNotNull {
val name = it.text().trim()
val episode = Regex("(\\d+[.,]?\\d*)").find(name)?.groupValues?.getOrNull(0)
?.toIntOrNull()
val link = it.attr("href")
Episode(link, name, episode = episode)
}
if(eps.isEmpty()) break else episodes.addAll(eps)
}

View File

@ -310,6 +310,7 @@ open class SoraStream : TmdbProvider() {
this.backgroundPosterUrl = bgPoster
this.year = year
this.plot = res.overview
this.duration = res.runtime
this.tags = if (isAnime) keywords else genres
this.rating = rating
this.recommendations = recommendations
@ -724,6 +725,7 @@ open class SoraStream : TmdbProvider() {
@JsonProperty("release_date") val releaseDate: String? = null,
@JsonProperty("first_air_date") val firstAirDate: String? = null,
@JsonProperty("overview") val overview: String? = null,
@JsonProperty("runtime") val runtime: Int? = null,
@JsonProperty("vote_average") val vote_average: Any? = null,
@JsonProperty("original_language") val original_language: String? = null,
@JsonProperty("status") val status: String? = null,