Skip to content

Commit

Permalink
animeflv: fix empty episode list (aniyomiorg#459)
Browse files Browse the repository at this point in the history
* Update build.gradle

* animeflv: fix empty episode list
  • Loading branch information
ahmedgamal17 authored Apr 4, 2022
1 parent 0158d2a commit 4270633
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 22 deletions.
2 changes: 1 addition & 1 deletion src/es/animeflv/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ext {
extName = 'AnimeFLV'
pkgNameSuffix = 'es.animeflv'
extClass = '.AnimeFlv'
extVersionCode = 16
extVersionCode = 17
libVersion = '12'
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,30 +76,28 @@ class AnimeFlv : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
override fun popularAnimeNextPageSelector(): String = "ul.pagination li a[rel=next]:not(li.disabled)"

override fun episodeListParse(response: Response): List<SEpisode> {
val episodes = mutableListOf<SEpisode>()
val jsoup = response.asJsoup()
jsoup.select("script").forEach { script ->
if (script.data().contains("var episodes = [")) {
val data = script.data().substringAfter("var episodes = [").substringBefore("];")
val animeId = response.request.url.pathSegments.last()
data.split("],").forEach {
val epNum = it.removePrefix("[").substringBefore(",")
val episode = SEpisode.create().apply {
episode_number = epNum.toFloat()
name = "Episodio $epNum"
url = "/ver/$animeId-$epNum"
date_upload = System.currentTimeMillis()
}
episodes.add(episode)
}
}
}
return episodes
return super.episodeListParse(response).reversed()
}

override fun episodeListSelector() = throw Exception("not used")
override fun episodeListSelector() = "ul.ListCaps li a"

override fun episodeFromElement(element: Element) = throw Exception("not used")
override fun episodeFromElement(element: Element): SEpisode {
val episode = SEpisode.create()
val epNum = getNumberFromEpsString(element.select("p").text())
episode.setUrlWithoutDomain(element.attr("abs:href"))
episode.episode_number = when {
(epNum.isNotEmpty()) -> epNum.toFloat()
else -> 1F
}
episode.name = element.select("p").text()
episode.date_upload = System.currentTimeMillis()

return episode
}

private fun getNumberFromEpsString(epsStr: String): String {
return epsStr.filter { it.isDigit() }
}

override fun videoListParse(response: Response): List<Video> {
val document = response.asJsoup()
Expand Down

0 comments on commit 4270633

Please sign in to comment.