diff --git a/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt b/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt index 286a6803f..68ed73d5d 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/EhEngine.kt @@ -669,7 +669,7 @@ object EhEngine { code = response.code headers = response.headers body = response.body.string() - result = ArchiveParser.parse(body) + result = ArchiveParser.parse(body)!! } } catch (e: Throwable) { ExceptionUtils.throwIfFatal(e) diff --git a/app/src/main/java/com/hippo/ehviewer/client/parser/ArchiveParser.kt b/app/src/main/java/com/hippo/ehviewer/client/parser/ArchiveParser.kt index 5e64e8874..44cc15b1e 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/parser/ArchiveParser.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/parser/ArchiveParser.kt @@ -13,199 +13,96 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +package com.hippo.ehviewer.client.parser -package com.hippo.ehviewer.client.parser; +import com.hippo.ehviewer.R +import com.hippo.ehviewer.client.exception.NoHAtHClientException +import org.jsoup.Jsoup +import java.util.function.IntFunction +import java.util.regex.Pattern -import androidx.annotation.NonNull; +object ArchiveParser { + private val PATTERN_ARCHIVE_URL = + Pattern.compile("(.*).*Click Here To Start Downloading") + private val PATTERN_HATH_FORM = + Pattern.compile("