Update AnimePahe

This commit is contained in:
kodjomoustapha
2024-08-21 18:16:00 +01:00
parent 6aec804ef7
commit eeffe41a5b
2 changed files with 11 additions and 6 deletions

View File

@@ -131,6 +131,9 @@ class AnimePahe extends MProvider {
@override @override
Future<List<MVideo>> getVideoList(String url) async { Future<List<MVideo>> getVideoList(String url) async {
//by default we use rhttp package but it does not support `followRedirects`
//so setting `useDartHttpClient` to true allows us to use a Dart http package that supports `followRedirects`
final client = Client(source, json.encode({"useDartHttpClient": true}));
final res = (await client.get(Uri.parse("$baseUrl$url"))); final res = (await client.get(Uri.parse("$baseUrl$url")));
final document = parseHtml(res.body); final document = parseHtml(res.body);
final downloadLinks = document.select("div#pickDownload > a"); final downloadLinks = document.select("div#pickDownload > a");
@@ -142,8 +145,8 @@ class AnimePahe extends MProvider {
final quality = btn.text; final quality = btn.text;
final paheWinLink = downloadLinks[i].attr("href"); final paheWinLink = downloadLinks[i].attr("href");
if (getPreferenceValue(source.id, "preffered_link_type")) { if (getPreferenceValue(source.id, "preffered_link_type")) {
final noRedirectClient = final noRedirectClient = Client(source,
Client(source, json.encode({"followRedirects": false})); json.encode({"followRedirects": false, "useDartHttpClient": true}));
final kwikHeaders = final kwikHeaders =
(await noRedirectClient.get(Uri.parse("${paheWinLink}/i"))).headers; (await noRedirectClient.get(Uri.parse("${paheWinLink}/i"))).headers;
final kwikUrl = final kwikUrl =
@@ -165,8 +168,10 @@ class AnimePahe extends MProvider {
getMapValue(json.encode(res.request.headers), "cookie"); getMapValue(json.encode(res.request.headers), "cookie");
cookie += cookie +=
"; ${getMapValue(json.encode(reskwik.headers), "set-cookie").replaceAll("path=/;", "")}"; "; ${getMapValue(json.encode(reskwik.headers), "set-cookie").replaceAll("path=/;", "")}";
final resNo = final resNo = await Client(
await Client(source, json.encode({"followRedirects": false})) source,
json.encode(
{"followRedirects": false, "useDartHttpClient": true}))
.post(Uri.parse(url), headers: { .post(Uri.parse(url), headers: {
"referer": reskwik.request.url.toString(), "referer": reskwik.request.url.toString(),
"cookie": cookie, "cookie": cookie,

View File

@@ -1,7 +1,7 @@
import '../../../../../model/source.dart'; import '../../../../../model/source.dart';
Source get animepaheSource => _animepaheSource; Source get animepaheSource => _animepaheSource;
const _animepaheVersion = "0.0.35"; const _animepaheVersion = "0.0.4";
const _animepaheSourceCodeUrl = const _animepaheSourceCodeUrl =
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/animepahe/animepahe.dart"; "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/anime/src/en/animepahe/animepahe.dart";
Source _animepaheSource = Source( Source _animepaheSource = Source(