Fixed a bug in exception handling in extractors (#840)

This commit is contained in:
miguelantonioe
2022-09-04 04:34:22 -05:00
committed by GitHub
parent 37e6718042
commit 34145a6f16
83 changed files with 137 additions and 187 deletions

View File

@ -9,10 +9,6 @@ import androidx.preference.EditTextPreference
import androidx.preference.ListPreference
import androidx.preference.MultiSelectListPreference
import androidx.preference.PreferenceScreen
import eu.kanade.tachiyomi.animeextension.de.serienstream.DdosGuardInterceptor
import eu.kanade.tachiyomi.animeextension.de.serienstream.RedirectInterceptor
import eu.kanade.tachiyomi.animeextension.de.serienstream.SConstants
import eu.kanade.tachiyomi.animeextension.de.serienstream.SerienstreamInterceptor
import eu.kanade.tachiyomi.animeextension.de.serienstream.extractors.DoodExtractor
import eu.kanade.tachiyomi.animeextension.de.serienstream.extractors.StreamTapeExtractor
import eu.kanade.tachiyomi.animeextension.de.serienstream.extractors.VoeExtractor

View File

@ -106,7 +106,7 @@ class DramaCool : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
url.contains("sbplay2.com") || url.contains("japopav.tv") || url.contains("viewsb.com") ||
url.contains("sbfast") || url.contains("sbfull.com") || url.contains("javplaya.com") ||
url.contains("ssbstream.net") || url.contains("p1ayerjavseen.com") || url.contains("sbthe.com") ||
url.contains("streamsss.net") || url.contains("sbplay2.xyz") // || url.contains("")
url.contains("streamsss.net") || url.contains("sbplay2.xyz") // || url.contains("")
-> {
val headers = headers.newBuilder()
.set("Referer", url)

View File

@ -5,7 +5,7 @@ ext {
extName = 'Animefenix'
pkgNameSuffix = 'es.animefenix'
extClass = '.Animefenix'
extVersionCode = 7
extVersionCode = 8
libVersion = '13'
}

View File

@ -24,7 +24,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.net.URLDecoder
class Animefenix : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -157,7 +156,7 @@ class Animefenix : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class SolidFilesExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, prefix: String = ""): List<Video> {
@ -21,7 +20,7 @@ class SolidFilesExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -8,7 +8,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class StreamSBExtractor(private val client: OkHttpClient) {
private val hexArray = "0123456789ABCDEF".toCharArray()
@ -47,7 +46,7 @@ class StreamSBExtractor(private val client: OkHttpClient) {
videoList.add(Video(videoUrl, quality, videoUrl, headers = headers))
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'AnimeFLV'
pkgNameSuffix = 'es.animeflv'
extClass = '.AnimeFlv'
extVersionCode = 27
extVersionCode = 28
libVersion = '13'
}

View File

@ -33,7 +33,6 @@ import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
import java.lang.Exception
class AnimeFlv : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -173,7 +172,7 @@ class AnimeFlv : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class DoodExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String): Video? {
@ -25,7 +24,7 @@ class DoodExtractor(private val client: OkHttpClient) {
).execute().body!!.string()
val videoUrl = "$videoUrlStart$randomString?token=$token&expiry=$expiry"
Video(url, quality, videoUrl, headers = doodHeaders(doodTld))
} catch (e: IOException) {
} catch (e: Exception) {
null
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -8,7 +8,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class StreamSBExtractor(private val client: OkHttpClient) {
private val hexArray = "0123456789ABCDEF".toCharArray()
@ -47,7 +46,7 @@ class StreamSBExtractor(private val client: OkHttpClient) {
videoList.add(Video(videoUrl, quality, videoUrl, headers = headers))
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,6 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class YourUploadExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, headers: Headers): List<Video> {
@ -22,7 +21,7 @@ class YourUploadExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'AnimeID'
pkgNameSuffix = 'es.animeid'
extClass = '.AnimeID'
extVersionCode = 4
extVersionCode = 5
libVersion = '13'
}

View File

@ -28,7 +28,6 @@ import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
import java.net.URI
import java.text.SimpleDateFormat
import java.util.Date
@ -194,7 +193,7 @@ class AnimeID : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'AnimeLatinoHD'
pkgNameSuffix = 'es.animelatinohd'
extClass = '.AnimeLatinoHD'
extVersionCode = 5
extVersionCode = 6
libVersion = '13'
}

View File

@ -36,7 +36,6 @@ import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
class AnimeLatinoHD : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -233,7 +232,7 @@ class AnimeLatinoHD : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class DoodExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String): Video? {
@ -25,7 +24,7 @@ class DoodExtractor(private val client: OkHttpClient) {
).execute().body!!.string()
val videoUrl = "$videoUrlStart$randomString?token=$token&expiry=$expiry"
Video(url, quality, videoUrl, headers = doodHeaders(doodTld))
} catch (e: IOException) {
} catch (e: Exception) {
null
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class SolidFilesExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, prefix: String = ""): List<Video> {
@ -21,7 +20,7 @@ class SolidFilesExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -8,7 +8,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class StreamSBExtractor(private val client: OkHttpClient) {
private val hexArray = "0123456789ABCDEF".toCharArray()
@ -47,7 +46,7 @@ class StreamSBExtractor(private val client: OkHttpClient) {
videoList.add(Video(videoUrl, quality, videoUrl, headers = headers))
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'AnimeonlineNinja'
pkgNameSuffix = 'es.animeonlineninja'
extClass = '.AnimeonlineNinja'
extVersionCode = 8
extVersionCode = 9
libVersion = '13'
}

View File

@ -27,7 +27,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
class AnimeonlineNinja : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -211,7 +210,7 @@ class AnimeonlineNinja : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class DoodExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String): Video? {
@ -25,7 +24,7 @@ class DoodExtractor(private val client: OkHttpClient) {
).execute().body!!.string()
val videoUrl = "$videoUrlStart$randomString?token=$token&expiry=$expiry"
Video(url, quality, videoUrl, headers = doodHeaders(doodTld))
} catch (e: IOException) {
} catch (e: Exception) {
null
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class SolidFilesExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, prefix: String = ""): List<Video> {
@ -21,7 +20,7 @@ class SolidFilesExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -8,7 +8,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class StreamSBExtractor(private val client: OkHttpClient) {
private val hexArray = "0123456789ABCDEF".toCharArray()
@ -47,7 +46,7 @@ class StreamSBExtractor(private val client: OkHttpClient) {
videoList.add(Video(videoUrl, quality, videoUrl, headers = headers))
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,6 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class UploadExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, headers: Headers, quality: String): Video? {
@ -13,7 +12,7 @@ class UploadExtractor(private val client: OkHttpClient) {
val document = client.newCall(GET(url)).execute().asJsoup()
val basicUrl = document.selectFirst("script:containsData(var player =)").data().substringAfter("sources: [\"").substringBefore("\"],")
return Video(basicUrl, "$quality Uqload", basicUrl, headers = headers)
} catch (e: IOException) {
} catch (e: Exception) {
null
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Animeyt'
pkgNameSuffix = 'es.animeyt'
extClass = '.Animeyt'
extVersionCode = 4
extVersionCode = 5
libVersion = '13'
}

View File

@ -22,7 +22,6 @@ import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
import java.lang.Exception
class Animeyt : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -110,7 +109,7 @@ class Animeyt : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -10,7 +10,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.OkHttpClient
import uy.kohesive.injekt.injectLazy
import java.io.IOException
class FastreamExtractor(private val client: OkHttpClient) {
private val json: Json by injectLazy()
@ -70,7 +69,7 @@ class FastreamExtractor(private val client: OkHttpClient) {
}
}
}
} catch (e: IOException) {
} catch (e: Exception) {
}
return videoList
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'AsiaLiveAction'
pkgNameSuffix = 'es.asialiveaction'
extClass = '.AsiaLiveAction'
extVersionCode = 5
extVersionCode = 6
libVersion = '13'
}

View File

@ -23,7 +23,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
import java.util.Calendar
@ -149,7 +148,7 @@ class AsiaLiveAction : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -8,7 +8,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class StreamSBExtractor(private val client: OkHttpClient) {
private val hexArray = "0123456789ABCDEF".toCharArray()
@ -46,7 +45,7 @@ class StreamSBExtractor(private val client: OkHttpClient) {
videoList.add(Video(videoUrl, quality, videoUrl, headers = headers))
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Doramasyt'
pkgNameSuffix = 'es.doramasyt'
extClass = '.Doramasyt'
extVersionCode = 4
extVersionCode = 5
libVersion = '13'
}

View File

@ -26,7 +26,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
class Doramasyt : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -142,7 +141,7 @@ class Doramasyt : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class SolidFilesExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, prefix: String = ""): List<Video> {
@ -21,7 +20,7 @@ class SolidFilesExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,6 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class UqloadExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, headers: Headers, quality: String): List<Video> {
@ -22,7 +21,7 @@ class UqloadExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Hentaijk'
pkgNameSuffix = 'es.hentaijk'
extClass = '.Hentaijk'
extVersionCode = 5
extVersionCode = 6
libVersion = '13'
containsNsfw = true
}

View File

@ -25,7 +25,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
class Hentaijk : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -217,7 +216,7 @@ class Hentaijk : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Hentaila'
pkgNameSuffix = 'es.hentaila'
extClass = '.Hentaila'
extVersionCode = 8
extVersionCode = 9
libVersion = '13'
containsNsfw = true
}

View File

@ -30,7 +30,6 @@ import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
import java.lang.Exception
class Hentaila : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -132,7 +131,7 @@ class Hentaila : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Jkanime'
pkgNameSuffix = 'es.jkanime'
extClass = '.Jkanime'
extVersionCode = 6
extVersionCode = 7
libVersion = '13'
}

View File

@ -26,7 +26,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
class Jkanime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -217,7 +216,7 @@ class Jkanime : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Jkhentai'
pkgNameSuffix = 'es.jkhentai'
extClass = '.Jkhentai'
extVersionCode = 7
extVersionCode = 8
libVersion = '13'
containsNsfw = true
}

View File

@ -22,7 +22,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
class Jkhentai : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -121,7 +120,7 @@ class Jkhentai : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class SolidFilesExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, prefix: String = ""): List<Video> {
@ -21,7 +20,7 @@ class SolidFilesExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,6 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class YourUploadExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, headers: Headers): List<Video> {
@ -22,7 +21,7 @@ class YourUploadExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'MonosChinos'
pkgNameSuffix = 'es.monoschinos'
extClass = '.MonosChinos'
extVersionCode = 15
extVersionCode = 16
libVersion = '13'
}

View File

@ -26,7 +26,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
class MonosChinos : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -123,7 +122,7 @@ class MonosChinos : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class SolidFilesExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, prefix: String = ""): List<Video> {
@ -21,7 +20,7 @@ class SolidFilesExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'MundoDonghua'
pkgNameSuffix = 'es.mundodonghua'
extClass = '.MundoDonghua'
extVersionCode = 5
extVersionCode = 6
libVersion = '13'
}

View File

@ -23,7 +23,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
class MundoDonghua : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -164,7 +163,7 @@ class MundoDonghua : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -11,7 +11,6 @@ import okhttp3.Headers
import org.jsoup.Connection
import org.jsoup.Jsoup
import uy.kohesive.injekt.injectLazy
import java.io.IOException
class ProteaExtractor() {
private val json: Json by injectLazy()
@ -45,7 +44,7 @@ class ProteaExtractor() {
videoList.add(Video("https://$urlVideo", quality, "https://$urlVideo", headers = newHeaders))
}
}
} catch (e: IOException) {
} catch (e: Exception) {
}
return videoList
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Pelisflix'
pkgNameSuffix = 'es.pelisflix'
extClass = '.PelisflixFactory'
extVersionCode = 3
extVersionCode = 4
libVersion = '13'
}

View File

@ -24,7 +24,6 @@ import org.jsoup.select.Elements
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
import java.lang.Exception
open class Pelisflix(override val name: String, override val baseUrl: String) : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -165,7 +164,7 @@ open class Pelisflix(override val name: String, override val baseUrl: String) :
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}
@ -230,13 +229,13 @@ open class Pelisflix(override val name: String, override val baseUrl: String) :
.substringBefore("Recuerda ")
.substringBefore("Director:")
.trim()
} catch (e: IOException) {
} catch (e: Exception) {
document.selectFirst("article.TPost header div.TPMvCn div.Description p:nth-child(1)").text().removeSurrounding("\"").trim()
}
var title = try {
document.selectFirst("article.TPost header.Container div.TPMvCn h1.Title").text().removePrefix("Serie").trim()
} catch (e: IOException) {
} catch (e: Exception) {
document.selectFirst("article.TPost header.Container div.TPMvCn a h1.Title").text().removePrefix("Serie").trim()
}

View File

@ -24,7 +24,6 @@ import okhttp3.Response
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
class PelisflixFactory : AnimeSourceFactory {
override fun createSources(): List<AnimeSource> = listOf(PelisflixClass(), SeriesflixClass())
@ -192,7 +191,7 @@ class SeriesflixClass : Pelisflix("Seriesflix", "https://seriesflix.video") {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class DoodExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String): Video? {
@ -25,7 +24,7 @@ class DoodExtractor(private val client: OkHttpClient) {
).execute().body!!.string()
val videoUrl = "$videoUrlStart$randomString?token=$token&expiry=$expiry"
Video(url, quality, videoUrl, headers = doodHeaders(doodTld))
} catch (e: IOException) {
} catch (e: Exception) {
null
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'Pelisplushd'
pkgNameSuffix = 'es.pelisplushd'
extClass = '.Pelisplushd'
extVersionCode = 17
extVersionCode = 18
libVersion = '13'
}

View File

@ -32,8 +32,7 @@ import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import uy.kohesive.injekt.injectLazy
import java.io.IOException
import java.lang.Exception
import kotlin.Exception
class Pelisplushd : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -63,7 +62,7 @@ class Pelisplushd : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
element.select("a").attr("href")
)
anime.title = element.select("a div.listing-content p").text()
anime.thumbnail_url = element.select("a img").attr("src")
anime.thumbnail_url = element.select("a img").attr("src").replace("/w154/", "/w200/")
return anime
}
@ -172,32 +171,48 @@ class Pelisplushd : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
}
}
"uwu" -> {
if (!url.contains("disable")) {
val body = client.newCall(GET(url)).execute().asJsoup()
if (body.select("script:containsData(var shareId)").toString().isNotBlank()) {
val shareId = body.selectFirst("script:containsData(var shareId)").data().substringAfter("shareId = \"").substringBefore("\"")
val amazonApiJson = client.newCall(GET("https://www.amazon.com/drive/v1/shares/$shareId?resourceVersion=V2&ContentType=JSON&asset=ALL")).execute().asJsoup()
val epId = amazonApiJson.toString().substringAfter("\"id\":\"").substringBefore("\"")
val amazonApi = client.newCall(GET("https://www.amazon.com/drive/v1/nodes/$epId/children?resourceVersion=V2&ContentType=JSON&limit=200&sort=%5B%22kind+DESC%22%2C+%22modifiedDate+DESC%22%5D&asset=ALL&tempLink=true&shareId=$shareId")).execute().asJsoup()
val videoUrl = amazonApi.toString().substringAfter("\"FOLDER\":").substringAfter("tempLink\":\"").substringBefore("\"")
videoList.add(Video(videoUrl, "Amazon", videoUrl))
try {
if (!url.contains("disable")) {
val body = client.newCall(GET(url)).execute().asJsoup()
if (body.select("script:containsData(var shareId)").toString()
.isNotBlank()
) {
val shareId =
body.selectFirst("script:containsData(var shareId)").data()
.substringAfter("shareId = \"").substringBefore("\"")
val amazonApiJson =
client.newCall(GET("https://www.amazon.com/drive/v1/shares/$shareId?resourceVersion=V2&ContentType=JSON&asset=ALL"))
.execute().asJsoup()
val epId = amazonApiJson.toString().substringAfter("\"id\":\"")
.substringBefore("\"")
val amazonApi =
client.newCall(GET("https://www.amazon.com/drive/v1/nodes/$epId/children?resourceVersion=V2&ContentType=JSON&limit=200&sort=%5B%22kind+DESC%22%2C+%22modifiedDate+DESC%22%5D&asset=ALL&tempLink=true&shareId=$shareId"))
.execute().asJsoup()
val videoUrl = amazonApi.toString().substringAfter("\"FOLDER\":")
.substringAfter("tempLink\":\"").substringBefore("\"")
videoList.add(Video(videoUrl, "Amazon", videoUrl))
}
}
}
} catch (e: Exception) {}
}
"voex" -> {
val body = client.newCall(GET(url)).execute().asJsoup()
val data1 = body.selectFirst("script:containsData(const sources = {)").data()
val video = data1.substringAfter("hls\": \"").substringBefore("\"")
videoList.add(Video(video, "Voex", video))
try {
val body = client.newCall(GET(url)).execute().asJsoup()
val data1 = body.selectFirst("script:containsData(const sources = {)").data()
val video = data1.substringAfter("hls\": \"").substringBefore("\"")
videoList.add(Video(video, "Voex", video))
} catch (e: Exception) {}
}
"streamlare" -> {
val id = url.substringAfter("/e/").substringBefore("?poster")
val videoUrlResponse = client.newCall(POST("https://slwatch.co/api/video/stream/get?id=$id")).execute().asJsoup()
json.decodeFromString<JsonObject>(videoUrlResponse.select("body").text())["result"]?.jsonObject?.forEach { quality ->
val resolution = quality.toString().substringAfter("\"label\":\"").substringBefore("\"")
val videoUrl = quality.toString().substringAfter("\"file\":\"").substringBefore("\"")
videoList.add(Video(videoUrl, "Streamlare:$resolution", videoUrl))
}
try {
val id = url.substringAfter("/e/").substringBefore("?poster")
val videoUrlResponse = client.newCall(POST("https://slwatch.co/api/video/stream/get?id=$id")).execute().asJsoup()
json.decodeFromString<JsonObject>(videoUrlResponse.select("body").text())["result"]?.jsonObject?.forEach { quality ->
val resolution = quality.toString().substringAfter("\"label\":\"").substringBefore("\"")
val videoUrl = quality.toString().substringAfter("\"file\":\"").substringBefore("\"")
videoList.add(Video(videoUrl, "Streamlare:$resolution", videoUrl))
}
} catch (e: Exception) {}
}
"doodstream" -> {
val url2 = url.replace("https://doodstream.com/e/", "https://dood.to/e/")
@ -233,7 +248,7 @@ class Pelisplushd : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}
@ -263,6 +278,8 @@ class Pelisplushd : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
override fun animeDetailsParse(document: Document): SAnime {
val anime = SAnime.create()
anime.title = document.selectFirst("h1.m-b-5").text()
anime.thumbnail_url = document.selectFirst("div.card-body div.row div.col-sm-3 img.img-fluid")
.attr("src").replace("/w154/", "/w500/")
anime.description = document.selectFirst("div.col-sm-4 div.text-large").ownText()
anime.genre = document.select("div.p-v-20.p-h-15.text-center a span").joinToString { it.text() }
anime.status = SAnime.COMPLETED

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class DoodExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String): Video? {
@ -25,7 +24,7 @@ class DoodExtractor(private val client: OkHttpClient) {
).execute().body!!.string()
val videoUrl = "$videoUrlStart$randomString?token=$token&expiry=$expiry"
Video(url, quality, videoUrl, headers = doodHeaders(doodTld))
} catch (e: IOException) {
} catch (e: Exception) {
null
}
}

View File

@ -8,7 +8,6 @@ import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class StreamSBExtractor(private val client: OkHttpClient) {
private val hexArray = "0123456789ABCDEF".toCharArray()
@ -47,7 +46,7 @@ class StreamSBExtractor(private val client: OkHttpClient) {
videoList.add(Video(videoUrl, quality, videoUrl, headers = headers))
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class StreamTapeExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, quality: String = "StreamTape"): Video? {
@ -17,7 +16,7 @@ class StreamTapeExtractor(private val client: OkHttpClient) {
?: return null
val videoUrl = "https://" + script.substringBefore("'+ ('xcd") + script.substringAfter("+ ('xcd").substringBefore("')")
Video(videoUrl, quality, videoUrl, headers = null)
} catch (i: IOException) {
} catch (i: Exception) {
null
}
}

View File

@ -5,7 +5,6 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class YourUploadExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, headers: Headers): List<Video> {
@ -22,7 +21,7 @@ class YourUploadExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,7 @@ ext {
extName = 'TioanimeH'
pkgNameSuffix = 'es.tioanimeh'
extClass = '.TioanimeHFactory'
extVersionCode = 7
extVersionCode = 8
libVersion = '13'
}

View File

@ -23,7 +23,6 @@ import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get
import java.io.IOException
import java.lang.Exception
open class TioanimeH(override val name: String, override val baseUrl: String) : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
@ -120,7 +119,7 @@ open class TioanimeH(override val name: String, override val baseUrl: String) :
videoSorted[0] = videoSorted[preferredIdx]
}
videoSorted.toList()
} catch (e: IOException) {
} catch (e: Exception) {
this
}
}

View File

@ -4,7 +4,6 @@ import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.OkHttpClient
import java.io.IOException
class OkruExtractor(private val client: OkHttpClient) {
fun videosFromUrl(url: String, qualityPrefix: String = ""): List<Video> {
@ -26,14 +25,14 @@ class OkruExtractor(private val client: OkHttpClient) {
val videoUrl = it.substringAfter("url\\\":\\\"")
.substringBefore("\\\"")
.replace("\\\\u0026", "&")
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: IOException) { it.substringBefore("\\\"") }
val quality = try { qualities.find { q -> q.first == it.substringBefore("\\\"") }?.second } catch (e: Exception) { it.substringBefore("\\\"") }
val videoQuality = qualityPrefix + "Okru:" + quality
if (videoUrl.startsWith("https://")) {
videoList.add(Video(videoUrl, videoQuality, videoUrl, headers = null))
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}

View File

@ -5,7 +5,6 @@ import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.Headers
import okhttp3.OkHttpClient
import java.io.IOException
class YourUploadExtractor(private val client: OkHttpClient) {
fun videoFromUrl(url: String, headers: Headers): List<Video> {
@ -22,7 +21,7 @@ class YourUploadExtractor(private val client: OkHttpClient) {
}
}
videoList
} catch (e: IOException) {
} catch (e: Exception) {
videoList
}
}