parent
725454b8d5
commit
e8a7678037
@ -14,7 +14,7 @@
|
|||||||
<category android:name="android.intent.category.BROWSABLE" />
|
<category android:name="android.intent.category.BROWSABLE" />
|
||||||
|
|
||||||
<data
|
<data
|
||||||
android:host="animefire.net"
|
android:host="animefire.plus"
|
||||||
android:pathPattern="/animes/..*"
|
android:pathPattern="/animes/..*"
|
||||||
android:scheme="https" />
|
android:scheme="https" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
ext {
|
ext {
|
||||||
extName = 'Anime Fire'
|
extName = 'Anime Fire'
|
||||||
extClass = '.AnimeFire'
|
extClass = '.AnimeFire'
|
||||||
extVersionCode = 5
|
extVersionCode = 6
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "$rootDir/common.gradle"
|
apply from: "$rootDir/common.gradle"
|
||||||
|
@ -28,7 +28,7 @@ class AnimeFire : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
|
|
||||||
override val name = "Anime Fire"
|
override val name = "Anime Fire"
|
||||||
|
|
||||||
override val baseUrl = "https://animefire.net"
|
override val baseUrl = "https://animefire.plus"
|
||||||
|
|
||||||
override val lang = "pt-BR"
|
override val lang = "pt-BR"
|
||||||
|
|
||||||
@ -146,7 +146,7 @@ class AnimeFire : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
val document = response.asJsoup()
|
val document = response.asJsoup()
|
||||||
val videoElement = document.selectFirst("video#my-video")
|
val videoElement = document.selectFirst("video#my-video")
|
||||||
return if (videoElement != null) {
|
return if (videoElement != null) {
|
||||||
AnimeFireExtractor(client, json).videoListFromElement(videoElement)
|
AnimeFireExtractor(client, json).videoListFromElement(videoElement, headers)
|
||||||
} else {
|
} else {
|
||||||
IframeExtractor(client).videoListFromDocument(document, headers)
|
IframeExtractor(client).videoListFromDocument(document, headers)
|
||||||
}
|
}
|
||||||
|
@ -4,19 +4,20 @@ import eu.kanade.tachiyomi.animeextension.pt.animefire.dto.AFResponseDto
|
|||||||
import eu.kanade.tachiyomi.animesource.model.Video
|
import eu.kanade.tachiyomi.animesource.model.Video
|
||||||
import eu.kanade.tachiyomi.network.GET
|
import eu.kanade.tachiyomi.network.GET
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
|
import okhttp3.Headers
|
||||||
import okhttp3.OkHttpClient
|
import okhttp3.OkHttpClient
|
||||||
import org.jsoup.nodes.Element
|
import org.jsoup.nodes.Element
|
||||||
|
|
||||||
class AnimeFireExtractor(private val client: OkHttpClient, private val json: Json) {
|
class AnimeFireExtractor(private val client: OkHttpClient, private val json: Json) {
|
||||||
|
|
||||||
fun videoListFromElement(videoElement: Element): List<Video> {
|
fun videoListFromElement(videoElement: Element, headers: Headers): List<Video> {
|
||||||
val jsonUrl = videoElement.attr("data-video-src")
|
val jsonUrl = videoElement.attr("data-video-src")
|
||||||
val response = client.newCall(GET(jsonUrl)).execute()
|
val response = client.newCall(GET(jsonUrl)).execute()
|
||||||
.body.string()
|
.body.string()
|
||||||
val responseDto = json.decodeFromString<AFResponseDto>(response)
|
val responseDto = json.decodeFromString<AFResponseDto>(response)
|
||||||
return responseDto.videos.map {
|
return responseDto.videos.map {
|
||||||
val url = it.url.replace("\\", "")
|
val url = it.url.replace("\\", "")
|
||||||
Video(url, it.quality, url)
|
Video(url, it.quality, url, headers = headers)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user