feat(multisrc/animestream/es): New source: AnimeYT.es and Anime.Tiodonghua.com and others fixes (#2531)

This commit is contained in:
Dark25 2023-11-25 10:39:31 +01:00 committed by GitHub
parent 380a8346aa
commit 1750b3d4ea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 86 additions and 3 deletions

View File

@ -0,0 +1,5 @@
dependencies {
implementation(project(":lib-okru-extractor"))
implementation(project(":lib-streamtape-extractor"))
implementation(project(":lib-sendvid-extractor"))
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

View File

@ -0,0 +1,30 @@
package eu.kanade.tachiyomi.animeextension.es.animeytes
import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor
import eu.kanade.tachiyomi.lib.sendvidextractor.SendvidExtractor
import eu.kanade.tachiyomi.lib.streamtapeextractor.StreamTapeExtractor
import eu.kanade.tachiyomi.multisrc.animestream.AnimeStream
import eu.kanade.tachiyomi.network.GET
class AnimeYTES : AnimeStream(
"es",
"AnimeYT.es",
"https://animeyt.es",
) {
override val animeListUrl = "$baseUrl/tv"
// ============================ Video Links =============================
private val okruExtractor by lazy { OkruExtractor(client) }
private val streamtapeExtractor by lazy { StreamTapeExtractor(client) }
private val sendvidExtractor by lazy { SendvidExtractor(client, headers) }
override fun getVideoList(url: String, name: String): List<Video> {
return when (name) {
"OK" -> okruExtractor.videosFromUrl(url)
"Stream" -> streamtapeExtractor.videosFromUrl(url)
"Send" -> sendvidExtractor.videosFromUrl(url)
else -> emptyList()
}
}
}

View File

@ -0,0 +1,7 @@
dependencies {
implementation(project(":lib-okru-extractor"))
implementation(project(":lib-mixdrop-extractor"))
implementation(project(":lib-voe-extractor"))
implementation(project(":lib-yourupload-extractor"))
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

View File

@ -0,0 +1,39 @@
package eu.kanade.tachiyomi.animeextension.es.tiodonghua
import androidx.preference.ListPreference
import androidx.preference.PreferenceScreen
import eu.kanade.tachiyomi.animesource.model.Video
import eu.kanade.tachiyomi.lib.mixdropextractor.MixDropExtractor
import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor
import eu.kanade.tachiyomi.lib.voeextractor.VoeExtractor
import eu.kanade.tachiyomi.lib.youruploadextractor.YourUploadExtractor
import eu.kanade.tachiyomi.multisrc.animestream.AnimeStream
import eu.kanade.tachiyomi.network.GET
class Tiodonghua : AnimeStream(
"es",
"Tiodonghua.com",
"https://anime.tiodonghua.com",
) {
// ============================ Video Links =============================
private val okruExtractor by lazy { OkruExtractor(client) }
private val voeExtractor by lazy { VoeExtractor(client) }
private val youruploadExtractor by lazy { YourUploadExtractor(client) }
private val mixdropExtractor by lazy { MixDropExtractor(client) }
override fun getVideoList(url: String, name: String): List<Video> {
return when (name) {
"Okru" -> okruExtractor.videosFromUrl(url)
"Voe" -> voeExtractor.videosFromUrl(url)
"YourUpload" -> youruploadExtractor.videoFromUrl(url, headers)
"MixDrop" -> mixdropExtractor.videosFromUrl(url)
else -> emptyList()
}
}
override val fetchFilters: Boolean
get() = false
}

View File

@ -16,6 +16,8 @@ class AnimeStreamGenerator : ThemeSourceGenerator {
SingleLang("Animenosub", "https://animenosub.com", "en", isNsfw = true, overrideVersionCode = 3),
SingleLang("AnimeTitans", "https://animetitans.com", "ar", isNsfw = false, overrideVersionCode = 13),
SingleLang("AnimeXin", "https://animexin.vip", "all", isNsfw = false, overrideVersionCode = 7),
SingleLang("AnimeYT.es", "https://animeyt.es", "es", isNsfw = false, className = "AnimeYTES", pkgName = "animeytes"),
SingleLang("Tiodonghua.com", "https://anime.tiodonghua.com", "es", isNsfw = false, className = "Tiodonghua", pkgName = "tiodonghua"),
SingleLang("AsyaAnimeleri", "https://asyaanimeleri.com", "tr", isNsfw = false, overrideVersionCode = 1),
SingleLang("ChineseAnime", "https://chineseanime.top", "all", isNsfw = false, overrideVersionCode = 3),
SingleLang("desu-online", "https://desu-online.pl", "pl", className = "DesuOnline", isNsfw = false, overrideVersionCode = 3),

View File

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

View File

@ -38,7 +38,7 @@ class EnNovelas : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
override val name = "EnNovelas"
override val baseUrl = "https://f.ennovelas.net"
override val baseUrl = "https://u.ennovelas.net"
override val lang = "es"
@ -52,7 +52,7 @@ class EnNovelas : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
override fun popularAnimeSelector(): String = ".block-post"
override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/novelas/page/$page")
override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/telenovelas/page/$page")
override fun popularAnimeFromElement(element: Element): SAnime {
val anime = SAnime.create()