From 9884a05c8af64a2f2b0e575645ca09f2cff60f09 Mon Sep 17 00:00:00 2001 From: Arjix <53124886+ArjixWasTaken@users.noreply.github.com> Date: Thu, 19 Aug 2021 23:48:22 +0300 Subject: [PATCH] fixed episode parsing (trailers.to) --- .../movieproviders/TrailersToProvider.kt | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/movieproviders/TrailersToProvider.kt b/app/src/main/java/com/lagradost/cloudstream3/movieproviders/TrailersToProvider.kt index ac2e0db8..1e0eb87e 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/movieproviders/TrailersToProvider.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/movieproviders/TrailersToProvider.kt @@ -180,7 +180,7 @@ class TrailersToProvider : MainAPI() { } else if (url.contains("/episode/")) { val response = khttp.get(url) val document = Jsoup.parse(response.text) - //val qSub = document.select("subtitle-content") + val qSub = document.select("subtitle-content") val subUrl = document.select("subtitle-content")?.attr("data-url") ?: "" val subData = fixUrl(document.selectFirst("content").attr("data-url") ?: return false) @@ -222,22 +222,22 @@ class TrailersToProvider : MainAPI() { val isTvShow = url.contains("/tvshow/") if (isTvShow) { - val episodes = document.select("article.tour-modern") ?: return null + val episodes = document.select("#seasons-accordion .card-body > .tour-modern") ?: return null val parsedEpisodes = episodes.map { item -> - val epPoster = item.selectFirst("> div.tour-modern-media > a.tour-modern-figure > img").attr("src") - val main = item.selectFirst("> div.tour-modern-main") - val titleHeader = main.selectFirst("> h5.tour-modern-title > a") + val epPoster = item.selectFirst("img").attr("src") + val main = item.selectFirst(".tour-modern-main") + val titleHeader = main.selectFirst("a") val titleName = titleHeader.text() val href = fixUrl(titleHeader.attr("href")) - val gValues = ".*?Season ([0-9]*).*Episode ([0-9]*): (.*)".toRegex().find(titleName)?.groupValues + val gValues = """.*?Season ([0-9]+)\s-\s(?:Episode )?([0-9]+)(?:: )?(.*)""".toRegex().find(titleName)?.groupValues val season = gValues?.get(1)?.toIntOrNull() val episode = gValues?.get(2)?.toIntOrNull() - val epName = gValues?.get(3) - val infoHeaders = main.select("> div > span.small-text") + val epName = if (!gValues?.get(3).isNullOrEmpty()) gValues?.get(3) else "Episode ${gValues?.get(2)}" + val infoHeaders = main.select("span.small-text") val date = infoHeaders?.get(0)?.text() val ratingText = infoHeaders?.get(1)?.text()?.replace("/ 10", "") val epRating = if (ratingText == null) null else parseRating(ratingText) - val epDescript = main.selectFirst("> p")?.text() + val epDescript = main.selectFirst("p")?.text() TvSeriesEpisode( epName, @@ -296,4 +296,4 @@ class TrailersToProvider : MainAPI() { ) } } -} \ No newline at end of file +}