mycima: fix video selectors (#210)
This commit is contained in:
@ -5,7 +5,7 @@ ext {
|
|||||||
extName = 'MY CIMA'
|
extName = 'MY CIMA'
|
||||||
pkgNameSuffix = 'ar.mycima'
|
pkgNameSuffix = 'ar.mycima'
|
||||||
extClass = '.MyCima'
|
extClass = '.MyCima'
|
||||||
extVersionCode = 9
|
extVersionCode = 10
|
||||||
libVersion = '12'
|
libVersion = '12'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -103,19 +103,27 @@ class MyCima : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
return videosFromElement(iframeResponse.selectFirst(videoListSelector()))
|
return videosFromElement(iframeResponse.selectFirst(videoListSelector()))
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun videoListSelector() = "script:containsData(source)"
|
override fun videoListSelector() = "body"
|
||||||
|
|
||||||
private fun videosFromElement(element: Element): List<Video> {
|
private fun videosFromElement(element: Element): List<Video> {
|
||||||
val data = element.data().substringAfter("sources: [").substringBefore("],")
|
|
||||||
val sources = data.split("format: '").drop(1)
|
|
||||||
val videoList = mutableListOf<Video>()
|
val videoList = mutableListOf<Video>()
|
||||||
for (source in sources) {
|
val script = element.select("script")
|
||||||
val src = source.substringAfter("src: \"").substringBefore("\"")
|
.firstOrNull { it.data().contains("player.qualityselector({") }
|
||||||
val quality = source.substringBefore("'") // .substringAfter("format: '")
|
if (script != null) {
|
||||||
val video = Video(src, quality, src, null)
|
val scriptV = element.select("script:containsData(source)")
|
||||||
videoList.add(video)
|
val data = element.data().substringAfter("sources: [").substringBefore("],")
|
||||||
|
val sources = data.split("format: '").drop(1)
|
||||||
|
val videoList = mutableListOf<Video>()
|
||||||
|
for (source in sources) {
|
||||||
|
val src = source.substringAfter("src: \"").substringBefore("\"")
|
||||||
|
val quality = source.substringBefore("'") // .substringAfter("format: '")
|
||||||
|
val video = Video(src, quality, src, null)
|
||||||
|
videoList.add(video)
|
||||||
|
}
|
||||||
|
return videoList
|
||||||
}
|
}
|
||||||
return videoList
|
val sourceTag = element.ownerDocument().select("source").firstOrNull()!!
|
||||||
|
return listOf(Video(sourceTag.attr("src"), "Default", sourceTag.attr("src"), null))
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun List<Video>.sort(): List<Video> {
|
override fun List<Video>.sort(): List<Video> {
|
||||||
|
@ -5,7 +5,7 @@ ext {
|
|||||||
extName = 'MY CIMA MOVIES'
|
extName = 'MY CIMA MOVIES'
|
||||||
pkgNameSuffix = 'ar.mycimamovie'
|
pkgNameSuffix = 'ar.mycimamovie'
|
||||||
extClass = '.MyCimaMovie'
|
extClass = '.MyCimaMovie'
|
||||||
extVersionCode = 9
|
extVersionCode = 10
|
||||||
libVersion = '12'
|
libVersion = '12'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,19 +83,27 @@ class MyCimaMovie : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
return videosFromElement(iframeResponse.selectFirst(videoListSelector()))
|
return videosFromElement(iframeResponse.selectFirst(videoListSelector()))
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun videoListSelector() = "script:containsData(source)"
|
override fun videoListSelector() = "body"
|
||||||
|
|
||||||
private fun videosFromElement(element: Element): List<Video> {
|
private fun videosFromElement(element: Element): List<Video> {
|
||||||
val data = element.data().substringAfter("sources: [").substringBefore("],")
|
|
||||||
val sources = data.split("format: '").drop(1)
|
|
||||||
val videoList = mutableListOf<Video>()
|
val videoList = mutableListOf<Video>()
|
||||||
for (source in sources) {
|
val script = element.select("script")
|
||||||
val src = source.substringAfter("src: \"").substringBefore("\"")
|
.firstOrNull { it.data().contains("player.qualityselector({") }
|
||||||
val quality = source.substringBefore("'") // .substringAfter("format: '")
|
if (script != null) {
|
||||||
val video = Video(src, quality, src, null)
|
val scriptV = element.select("script:containsData(source)")
|
||||||
videoList.add(video)
|
val data = element.data().substringAfter("sources: [").substringBefore("],")
|
||||||
|
val sources = data.split("format: '").drop(1)
|
||||||
|
val videoList = mutableListOf<Video>()
|
||||||
|
for (source in sources) {
|
||||||
|
val src = source.substringAfter("src: \"").substringBefore("\"")
|
||||||
|
val quality = source.substringBefore("'") // .substringAfter("format: '")
|
||||||
|
val video = Video(src, quality, src, null)
|
||||||
|
videoList.add(video)
|
||||||
|
}
|
||||||
|
return videoList
|
||||||
}
|
}
|
||||||
return videoList
|
val sourceTag = element.ownerDocument().select("source").firstOrNull()!!
|
||||||
|
return listOf(Video(sourceTag.attr("src"), "Default", sourceTag.attr("src"), null))
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun List<Video>.sort(): List<Video> {
|
override fun List<Video>.sort(): List<Video> {
|
||||||
|
Reference in New Issue
Block a user