fix: Madara getPageList

This commit is contained in:
kodjomoustapha
2024-08-02 16:47:39 +01:00
parent c2f4d0d6e3
commit 13b15c196c
2 changed files with 18 additions and 18 deletions

View File

@@ -228,30 +228,30 @@ class Madara extends MProvider {
@override @override
Future<List<String>> getPageList(String url) async { Future<List<String>> getPageList(String url) async {
final res = (await client.get(Uri.parse(url))).body; final res = (await client.get(Uri.parse(url)));
final document = parseHtml(res); final document = parseHtml(res.body);
final pageElement = document.selectFirst(
"div.page-break, li.blocks-gallery-item, .reading-content, .text-left img");
List<String> imgs = pageElement final pageElements = document.select(
.select("img") "div.page-break, li.blocks-gallery-item, .reading-content .text-left:not(:has(.blocks-gallery-item)) img");
.map((MElement e) =>
e.attr("src") ?? List<String> imgs = [];
e.attr("data-src") ?? for (var element in pageElements) {
e.attr("data-lazy-src") ?? try {
e.attr("srcset")) final imgElement = element.selectFirst("img");
.toList(); final img = imgElement.attr("src") ??
imgElement.attr("data-src") ??
imgElement.attr("data-lazy-src") ??
imgElement.attr("srcset");
imgs.add(img);
} catch (_) {}
}
List<String> pageUrls = []; List<String> pageUrls = [];
if (imgs.length == 1) { if (imgs.length == 1) {
final pagesNumber = final pagesNumber =
document.selectFirst("#single-pager").select("option").length; document.selectFirst("#single-pager").select("option").length;
MElement imgElement = pageElement.selectFirst("img"); final imgUrl = imgs.first;
final imgUrl = imgElement.attr("src") ??
imgElement.attr("data-src") ??
imgElement.attr("data-lazy-src") ??
imgElement.attr("srcset");
for (var i = 0; i < pagesNumber; i++) { for (var i = 0; i < pagesNumber; i++) {
final val = i + 1; final val = i + 1;
if (i.toString().length == 1) { if (i.toString().length == 1) {

View File

@@ -371,7 +371,7 @@ import 'src/truyenvn/truyenvn.dart';
const madaraVersion = "0.1.0"; const madaraVersion = "0.1.1";
const madaraSourceCodeUrl = const madaraSourceCodeUrl =
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/manga/multisrc/madara/madara.dart"; "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/manga/multisrc/madara/madara.dart";