fix(tr/tranimeizle): Fix anime titles (#2110)

This commit is contained in:
Claudemirovsky
2023-09-01 03:09:21 -03:00
committed by GitHub
parent e2f755d994
commit b56747fcaa
2 changed files with 10 additions and 4 deletions

View File

@ -7,7 +7,7 @@ ext {
extName = 'TR Anime Izle' extName = 'TR Anime Izle'
pkgNameSuffix = 'tr.tranimeizle' pkgNameSuffix = 'tr.tranimeizle'
extClass = '.TRAnimeIzle' extClass = '.TRAnimeIzle'
extVersionCode = 1 extVersionCode = 2
libVersion = '13' libVersion = '13'
} }

View File

@ -71,7 +71,7 @@ class TRAnimeIzle : ParsedAnimeHttpSource(), ConfigurableAnimeSource {
override fun popularAnimeFromElement(element: Element) = SAnime.create().apply { override fun popularAnimeFromElement(element: Element) = SAnime.create().apply {
setUrlWithoutDomain(element.attr("data-href")) setUrlWithoutDomain(element.attr("data-href"))
thumbnail_url = element.selectFirst("img")!!.attr("src") thumbnail_url = element.selectFirst("img")!!.attr("src")
title = element.selectFirst("div.bar > h4")!!.text() title = element.selectFirst("div.bar > h4")!!.text().clearName()
} }
override fun popularAnimeNextPageSelector() = "ul.pagination > li:has(.ti-angle-right):not(.disabled)" override fun popularAnimeNextPageSelector() = "ul.pagination > li:has(.ti-angle-right):not(.disabled)"
@ -118,7 +118,7 @@ class TRAnimeIzle : ParsedAnimeHttpSource(), ConfigurableAnimeSource {
// =========================== Anime Details ============================ // =========================== Anime Details ============================
override fun animeDetailsParse(document: Document) = SAnime.create().apply { override fun animeDetailsParse(document: Document) = SAnime.create().apply {
setUrlWithoutDomain(document.location()) setUrlWithoutDomain(document.location())
title = document.selectFirst("div.playlist-title h1")!!.text() title = document.selectFirst("div.playlist-title h1")!!.text().clearName()
thumbnail_url = document.selectFirst("div.poster .social-icon img")!!.attr("src") thumbnail_url = document.selectFirst("div.poster .social-icon img")!!.attr("src")
val infosDiv = document.selectFirst("div.col-md-6 > div.row")!! val infosDiv = document.selectFirst("div.col-md-6 > div.row")!!
@ -222,7 +222,11 @@ class TRAnimeIzle : ParsedAnimeHttpSource(), ConfigurableAnimeSource {
"video.sibnet" in url -> sibnetExtractor.videosFromUrl(url) "video.sibnet" in url -> sibnetExtractor.videosFromUrl(url)
"streamlare.com" in url -> streamlareExtractor.videosFromUrl(url) "streamlare.com" in url -> streamlareExtractor.videosFromUrl(url)
"voe.sx" in url -> voeExtractor.videoFromUrl(url)?.let(::listOf) ?: emptyList() "voe.sx" in url -> voeExtractor.videoFromUrl(url)?.let(::listOf) ?: emptyList()
"yourupload.com" in url -> yourUploadExtractor.videoFromUrl(url, headers) "yourupload.com" in url -> {
yourUploadExtractor.videoFromUrl(url, headers)
// ignore error links
.filterNot { it.url.contains("/novideo.mp4") }
}
else -> emptyList() else -> emptyList()
} }
} }
@ -259,6 +263,8 @@ class TRAnimeIzle : ParsedAnimeHttpSource(), ConfigurableAnimeSource {
} }
// ============================= Utilities ============================== // ============================= Utilities ==============================
private fun String.clearName() = removeSuffix(" İzle").removeSuffix(" Bölüm")
private fun String.toDate(): Long { private fun String.toDate(): Long {
return runCatching { DATE_FORMATTER.parse(trim())?.time } return runCatching { DATE_FORMATTER.parse(trim())?.time }
.getOrNull() ?: 0L .getOrNull() ?: 0L