From 80c0c2259652af6ae7d9c75c262b6819d224895e Mon Sep 17 00:00:00 2001 From: jmir1 Date: Tue, 14 Dec 2021 12:00:56 +0100 Subject: [PATCH] oploverz: skip qualities with parsing errors closes #189 --- src/id/oploverz/build.gradle | 2 +- .../kanade/tachiyomi/animeextension/id/oploverz/Oploverz.kt | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/id/oploverz/build.gradle b/src/id/oploverz/build.gradle index 42ca4c5a2..1df08ea49 100644 --- a/src/id/oploverz/build.gradle +++ b/src/id/oploverz/build.gradle @@ -5,7 +5,7 @@ ext { extName = 'Oploverz' pkgNameSuffix = 'id.oploverz' extClass = '.Oploverz' - extVersionCode = 5 + extVersionCode = 6 libVersion = '12' } diff --git a/src/id/oploverz/src/eu/kanade/tachiyomi/animeextension/id/oploverz/Oploverz.kt b/src/id/oploverz/src/eu/kanade/tachiyomi/animeextension/id/oploverz/Oploverz.kt index baab20165..c66ca93e7 100644 --- a/src/id/oploverz/src/eu/kanade/tachiyomi/animeextension/id/oploverz/Oploverz.kt +++ b/src/id/oploverz/src/eu/kanade/tachiyomi/animeextension/id/oploverz/Oploverz.kt @@ -129,7 +129,9 @@ class Oploverz : ConfigurableAnimeSource, ParsedAnimeHttpSource() { val patternGoogle = "iframe[src^=https://www.blogger.com/video.g?token=]" val iframe = document.select(patternGoogle).firstOrNull() - val zippy = document.select(patternZippy).map { zippyFromElement(it) } + val zippy = document.select(patternZippy).mapNotNull { + runCatching { zippyFromElement(it) }.getOrNull() + } val google = if (iframe == null) { mutableListOf() } else try { googleLinkFromElement(iframe) } catch (e: Exception) { mutableListOf() } @@ -154,6 +156,7 @@ class Oploverz : ConfigurableAnimeSource, ParsedAnimeHttpSource() { } return videoList } + private fun zippyFromElement(element: Element): Video { val res = client.newCall(GET(element.attr("href"))).execute().asJsoup() val scr = res.select("script:containsData(dlbutton)").html() @@ -176,6 +179,7 @@ class Oploverz : ConfigurableAnimeSource, ParsedAnimeHttpSource() { } return Video(url, quality, url, null) } + override fun videoListSelector(): String = throw Exception("not used") override fun videoUrlParse(document: Document) = throw Exception("not used")