This commit is contained in:
Moustapha Kodjo Amadou
2025-06-05 15:34:21 +01:00
parent 89fe762543
commit 51033c2e62
2 changed files with 46 additions and 51 deletions

View File

@@ -10,8 +10,7 @@ class MangaHere extends MProvider {
@override
Future<MPages> getPopular(int page) async {
final res =
(await client.get(
final res = (await client.get(
Uri.parse("${source.baseUrl}/directory/$page.htm"),
headers: getHeader(source.baseUrl),
)).body;
@@ -43,8 +42,7 @@ class MangaHere extends MProvider {
@override
Future<MPages> getLatestUpdates(int page) async {
final res =
(await client.get(
final res = (await client.get(
Uri.parse("${source.baseUrl}/directory/$page.htm?latest"),
headers: getHeader(source.baseUrl),
)).body;
@@ -91,12 +89,10 @@ class MangaHere extends MProvider {
final rt = filter.values[filter.state].value;
url += "${ll(url)}rating=$rt";
} else if (filter.type == "GenreList") {
final included =
(filter.state as List)
final included = (filter.state as List)
.where((e) => e.state == 1 ? true : false)
.toList();
final excluded =
(filter.state as List)
final excluded = (filter.state as List)
.where((e) => e.state == 2 ? true : false)
.toList();
if (included.isNotEmpty) {
@@ -123,8 +119,7 @@ class MangaHere extends MProvider {
}
}
url += "${ll(url)}title=$query&page=$page";
final res =
(await client.get(
final res = (await client.get(
Uri.parse(url),
headers: getHeader(source.baseUrl),
)).body;
@@ -159,17 +154,20 @@ class MangaHere extends MProvider {
final statusList = [
{"Ongoing": 0, "Completed": 1},
];
final res =
(await client.get(
final res = (await client.get(
Uri.parse("${source.baseUrl}/$url"),
headers: getHeader(source.baseUrl),
)).body;
MManga manga = MManga();
manga.author =
xpath(res, '//*[@class="detail-info-right-say"]/a/text()').first;
manga.author = xpath(
res,
'//*[@class="detail-info-right-say"]/a/text()',
).first;
manga.description = xpath(res, '//*[@class="fullcontent"]/text()').first;
final status =
xpath(res, '//*[@class="detail-info-right-title-tip"]/text()').first;
final status = xpath(
res,
'//*[@class="detail-info-right-title-tip"]/text()',
).first;
manga.status = parseStatus(status, statusList);
manga.genre = xpath(
res,
@@ -251,8 +249,6 @@ class MangaHere extends MProvider {
String pageLink =
"$pageBase/chapterfun.ashx?cid=$chapterId&page=$i&key=$secretKey";
String responseText = "".toString();
for (int tr = 1; tr <= 3; tr++) {
if (responseText.isEmpty) {
final headers = {
"Referer": urll,
"Accept": "*/*",
@@ -262,16 +258,15 @@ class MangaHere extends MProvider {
"X-Requested-With": "XMLHttpRequest",
};
final ress =
(await client.get(Uri.parse(pageLink), headers: headers)).body;
responseText = ress;
final ress = (await client.get(
Uri.parse(pageLink),
headers: headers,
)).body;
responseText = ress.isNotEmpty ? ress : "";
if (responseText.isEmpty) {
secretKey = "";
}
}
}
String deobfuscatedScript = unpackJs(
responseText.replaceAll("eval", ""),
);

View File

@@ -1,7 +1,7 @@
import '../../../../../model/source.dart';
Source get mangahereSource => _mangahereSource;
const _mangahereVersion = "0.0.75";
const _mangahereVersion = "0.0.8";
const _mangahereSourceCodeUrl =
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/manga/src/en/mangahere/mangahere.dart";
Source _mangahereSource = Source(