解析正文url时传入chapter参数

pull/416/head
gedoor 5 years ago
parent ee569a38d5
commit e3485cba92
  1. 1
      app/src/main/assets/updateLog.md
  2. 4
      app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeUrl.kt
  3. 12
      app/src/main/java/io/legado/app/model/webBook/WebBook.kt

@ -6,6 +6,7 @@
**2020/10/04** **2020/10/04**
* 更新时预下载10章 * 更新时预下载10章
* 支持更多分组 * 支持更多分组
*
**2020/10/02** **2020/10/02**
* 优化规则解析 * 优化规则解析

@ -11,6 +11,7 @@ import io.legado.app.constant.AppConst.userAgent
import io.legado.app.constant.AppPattern.EXP_PATTERN import io.legado.app.constant.AppPattern.EXP_PATTERN
import io.legado.app.constant.AppPattern.JS_PATTERN import io.legado.app.constant.AppPattern.JS_PATTERN
import io.legado.app.data.entities.BaseBook import io.legado.app.data.entities.BaseBook
import io.legado.app.data.entities.BookChapter
import io.legado.app.help.JsExtensions import io.legado.app.help.JsExtensions
import io.legado.app.help.http.* import io.legado.app.help.http.*
import io.legado.app.help.http.api.HttpGetApi import io.legado.app.help.http.api.HttpGetApi
@ -39,8 +40,9 @@ class AnalyzeUrl(
speakSpeed: Int? = null, speakSpeed: Int? = null,
headerMapF: Map<String, String>? = null, headerMapF: Map<String, String>? = null,
baseUrl: String? = null, baseUrl: String? = null,
val book: BaseBook? = null,
var useWebView: Boolean = false, var useWebView: Boolean = false,
val book: BaseBook? = null,
val chapter: BookChapter? = null
) : JsExtensions { ) : JsExtensions {
companion object { companion object {
private val pagePattern = Pattern.compile("<(.*?)>") private val pagePattern = Pattern.compile("<(.*?)>")

@ -106,10 +106,10 @@ class WebBook(val bookSource: BookSource) {
book.infoHtml book.infoHtml
} else { } else {
val analyzeUrl = AnalyzeUrl( val analyzeUrl = AnalyzeUrl(
book = book,
ruleUrl = book.bookUrl, ruleUrl = book.bookUrl,
baseUrl = sourceUrl, baseUrl = sourceUrl,
headerMapF = bookSource.getHeaderMap() headerMapF = bookSource.getHeaderMap(),
book = book
) )
analyzeUrl.getResponseAwait(bookSource.bookSourceUrl).body analyzeUrl.getResponseAwait(bookSource.bookSourceUrl).body
} }
@ -177,12 +177,12 @@ class WebBook(val bookSource: BookSource) {
if (bookChapter.url == book.bookUrl && !book.tocHtml.isNullOrEmpty()) { if (bookChapter.url == book.bookUrl && !book.tocHtml.isNullOrEmpty()) {
book.tocHtml book.tocHtml
} else { } else {
val analyzeUrl = val analyzeUrl = AnalyzeUrl(
AnalyzeUrl(
book = book,
ruleUrl = bookChapter.url, ruleUrl = bookChapter.url,
baseUrl = book.tocUrl, baseUrl = book.tocUrl,
headerMapF = bookSource.getHeaderMap() headerMapF = bookSource.getHeaderMap(),
book = book,
chapter = bookChapter
) )
analyzeUrl.getResponseAwait( analyzeUrl.getResponseAwait(
bookSource.bookSourceUrl, bookSource.bookSourceUrl,

Loading…
Cancel
Save