MyReadingManga Alternative Search Function (#1360)

MyReadingManga Alternative Search Function
This commit is contained in:
happywillow0 2019-08-13 21:11:22 -04:00 committed by Eugene
parent 20bdc1cdf7
commit d1809760a0
2 changed files with 10 additions and 18 deletions

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: MyReadingManga' appName = 'Tachiyomi: MyReadingManga'
pkgNameSuffix = 'all.myreadingmanga' pkgNameSuffix = 'all.myreadingmanga'
extClass = '.MyReadingMangaFactory' extClass = '.MyReadingMangaFactory'
extVersionCode = 21 extVersionCode = 22
libVersion = '1.2' libVersion = '1.2'
} }

View File

@ -8,6 +8,7 @@ import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.* import okhttp3.*
import org.jsoup.nodes.Document import org.jsoup.nodes.Document
import org.jsoup.nodes.Element import org.jsoup.nodes.Element
import java.net.URLEncoder
import java.text.SimpleDateFormat import java.text.SimpleDateFormat
import java.util.concurrent.TimeUnit import java.util.concurrent.TimeUnit
@ -65,30 +66,21 @@ open class MyReadingManga(override val lang: String) : ParsedHttpSource() {
override fun latestUpdatesNextPageSelector() = popularMangaNextPageSelector() override fun latestUpdatesNextPageSelector() = popularMangaNextPageSelector()
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
val query2 = URLEncoder.encode(query, "UTF-8")
val uri = Uri.parse("$baseUrl/search/").buildUpon() val uri = Uri.parse("$baseUrl/search/").buildUpon()
uri.appendQueryParameter("search", query) .appendEncodedPath(query2)
.appendPath("page")
.appendPath("$page")
return GET(uri.toString()) return GET(uri.toString())
} }
override fun searchMangaParse(response: Response): MangasPage { override fun searchMangaParse(response: Response) = popularMangaParse(response)
val document = response.asJsoup()
val elements = document.select(searchMangaSelector()) override fun searchMangaSelector() = popularMangaSelector()
var mangas = mutableListOf<SManga>()
for (element in elements) {
if (element.text().contains("[$lang", true)) {
mangas.add(searchMangaFromElement(element))
}
}
return MangasPage(mangas, false)
}
override fun searchMangaSelector() = "div.results-by-facets div[id*=res]"
override fun searchMangaFromElement(element: Element) = buildManga(element.select("a").first(), element.select("img").first())
override fun searchMangaFromElement(element: Element) = popularMangaFromElement(element)
private fun buildManga(titleElement: Element, thumbnailElement: Element): SManga { private fun buildManga(titleElement: Element, thumbnailElement: Element): SManga {
val manga = SManga.create() val manga = SManga.create()
manga.setUrlWithoutDomain(titleElement.attr("href")) manga.setUrlWithoutDomain(titleElement.attr("href"))