This commit is contained in:
kunfei
2023-02-22 17:14:39 +08:00
parent 9e8744e00f
commit bab35f132c
2 changed files with 14 additions and 6 deletions

View File

@@ -3,6 +3,7 @@ package io.legado.app.model.analyzeRule
import androidx.annotation.Keep
import org.jsoup.Jsoup
import org.jsoup.nodes.Element
import org.jsoup.parser.Parser
import org.jsoup.select.Collector
import org.jsoup.select.Elements
import org.jsoup.select.Evaluator
@@ -17,10 +18,13 @@ class AnalyzeByJSoup(doc: Any) {
private var element: Element = parse(doc)
private fun parse(doc: Any): Element {
return when (doc) {
is Element -> doc
else -> Jsoup.parse(doc.toString())
if (doc is Element) {
return doc
}
if (doc.toString().startsWith("<?xml", true)) {
return Jsoup.parse(doc.toString(), Parser.xmlParser())
}
return Jsoup.parse(doc.toString())
}
/**

View File

@@ -5,6 +5,7 @@ import androidx.annotation.Keep
import org.jsoup.Jsoup
import org.jsoup.nodes.Element
import org.jsoup.nodes.TextNode
import org.jsoup.parser.Parser
import org.jsoup.select.Elements
@Keep
@@ -13,10 +14,13 @@ class AnalyzeByXPath(doc: Any) {
private var element: Element = parse(doc)
private fun parse(doc: Any): Element {
return when (doc) {
is Element -> doc
else -> Jsoup.parse(doc.toString())
if (doc is Element) {
return doc
}
if (doc.toString().startsWith("<?xml", true)) {
return Jsoup.parse(doc.toString(), Parser.xmlParser())
}
return Jsoup.parse(doc.toString())
}
internal fun getElements(xPath: String): Elements? {