Madara fix chapter list

This commit is contained in:
kodjomoustapha
2024-01-30 09:51:31 +01:00
parent 68399a43e5
commit 50790648f9
2 changed files with 43 additions and 11 deletions

View File

@@ -135,12 +135,20 @@ class Madara extends MProvider {
""; "";
final imageElement = document.selectFirst("div.summary_image img"); final imageElement = document.selectFirst("div.summary_image img");
final image = imageElement?.attr("src") ?? var image = imageElement?.attr("src") ??
imageElement?.attr("data-src") ?? imageElement?.attr("data-src") ??
imageElement?.attr("data-lazy-src") ?? imageElement?.attr("data-lazy-src") ??
imageElement?.attr("srcset"); imageElement?.attr("srcset");
if (image != null) { if (image != null) {
manga.imageUrl = image; if (image.contains("dflazy")) {
image = imageElement?.attr("data-src") ??
imageElement?.attr("data-src") ??
imageElement?.attr("data-lazy-src") ??
imageElement?.attr("srcset");
}
if (image != null) {
manga.imageUrl = image;
}
} }
final id = document final id = document
@@ -171,14 +179,38 @@ class Madara extends MProvider {
} else { } else {
res = oldXhrChaptersRequest.body; res = oldXhrChaptersRequest.body;
} }
MDocument chapDoc = parseHtml(res);
final chapDoc = parseHtml(res); List<String> chapUrls = [];
var chapUrls = List<String> chaptersNames = [];
chapDoc.xpath('//li[contains(@class,"wp-manga-chapter")]/a/@href'); List<String> chapDates = [];
var chaptersNames = for (MElement element in chapDoc.select("li.wp-manga-chapter") ?? []) {
chapDoc.xpath('//li[contains(@class,"wp-manga-chapter")]/a/text()'); final ch = element.selectFirst("a");
var chapDates = chapDoc if (ch != null) {
.xpath('//li[contains(@class,"wp-manga-chapter")]/span/i/text()'); chapUrls.add(ch.attr("href"));
}
}
if (chapUrls.isEmpty) {
res = (await client.post(Uri.parse("${url}ajax/chapters"),
headers: headers))
.body;
chapDoc = parseHtml(res);
for (MElement element in chapDoc.select("li.wp-manga-chapter") ?? []) {
final ch = element.selectFirst("a");
if (ch != null) {
chapUrls.add(ch.attr("href"));
}
}
}
for (MElement element in chapDoc.select("li.wp-manga-chapter") ?? []) {
final ch = element.selectFirst("a");
final chd = element.selectFirst("span.chapter-release-date");
if (ch != null) {
chaptersNames.add(ch.text);
}
if (chd != null) {
chapDates.add(chd.text);
}
}
List<String> dateUploads = []; List<String> dateUploads = [];
if (source.dateFormat.isNotEmpty) { if (source.dateFormat.isNotEmpty) {
List<String> chaptersDate = []; List<String> chaptersDate = [];

View File

@@ -164,7 +164,7 @@ import 'src/comicarab/comicarab.dart';
import 'src/manga3asq/manga3asq.dart'; import 'src/manga3asq/manga3asq.dart';
import 'src/bakamh/bakamh.dart'; import 'src/bakamh/bakamh.dart';
const madaraVersion = "0.0.75"; const madaraVersion = "0.0.8";
const madaraSourceCodeUrl = const madaraSourceCodeUrl =
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/madara/madara.dart"; "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/manga/multisrc/madara/madara.dart";