mirror of
https://github.com/kodjodevf/mangayomi-extensions.git
synced 2026-02-17 12:20:28 +00:00
fix
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
import '../../../../model/source.dart';
|
import '../../../../model/source.dart';
|
||||||
|
|
||||||
Source get universanimeSource => _universanimeSource;
|
Source get universanimeSource => _universanimeSource;
|
||||||
const universanimeVersion = "0.0.1";
|
const universanimeVersion = "0.0.11";
|
||||||
const universanimeSourceCodeUrl =
|
const universanimeSourceCodeUrl =
|
||||||
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/anime/src/fr/universanime/universanime-v$universanimeVersion.dart";
|
"https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/main/anime/src/fr/universanime/universanime-v$universanimeVersion.dart";
|
||||||
Source _universanimeSource = Source(
|
Source _universanimeSource = Source(
|
||||||
|
|||||||
@@ -1,9 +1,44 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'package:bridge_lib/bridge_lib.dart';
|
import 'package:bridge_lib/bridge_lib.dart';
|
||||||
|
|
||||||
getPopularAnime(MangaModel anime) async {
|
getVideoList(MangaModel anime) async {
|
||||||
|
final datas = {
|
||||||
|
"url": anime.link,
|
||||||
|
"headers": null,
|
||||||
|
"sourceId": anime.sourceId
|
||||||
|
};
|
||||||
|
|
||||||
|
final res = await MBridge.http(json.encode(datas), 0);
|
||||||
|
|
||||||
|
if (res.isEmpty) {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
final serverUrls = MBridge.xpath(
|
||||||
|
res, '//*[@class="entry-content"]/div/div/iframe/@src', '._')
|
||||||
|
.split("._");
|
||||||
|
List<VideoModel> videos = [];
|
||||||
|
for (var i = 0; i < serverUrls.length; i++) {
|
||||||
|
final url = MBridge.listParse(serverUrls, 0)[i].toString();
|
||||||
|
print(url);
|
||||||
|
List<VideoModel> a = [];
|
||||||
|
if (url.startsWith("https://filemoon.")) {
|
||||||
|
} else if (url.startsWith("https://doodstream.")) {
|
||||||
|
a = await MBridge.doodExtractor(url);
|
||||||
|
} else if (url.startsWith("https://streamtape.")) {
|
||||||
|
a = await MBridge.streamTapeExtractor(url);
|
||||||
|
} else if (url.contains("streamsb")) {}
|
||||||
|
for (var vi in a) {
|
||||||
|
videos.add(vi);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return videos;
|
||||||
|
}
|
||||||
|
|
||||||
|
getLatestUpdatesAnime(MangaModel anime) async {
|
||||||
final data = {
|
final data = {
|
||||||
"url": "${anime.baseUrl}/liste-des-animes-2/",
|
"url": "${anime.baseUrl}/page/${anime.page}/",
|
||||||
"headers": null,
|
"headers": null,
|
||||||
"sourceId": anime.sourceId
|
"sourceId": anime.sourceId
|
||||||
};
|
};
|
||||||
@@ -13,18 +48,15 @@ getPopularAnime(MangaModel anime) async {
|
|||||||
}
|
}
|
||||||
anime.urls = MBridge.xpath(
|
anime.urls = MBridge.xpath(
|
||||||
res,
|
res,
|
||||||
'//*[@class="lcp_catlist" and contains(@id,"lcp_instance_")]/li/a/@href',
|
'//*[@class="recent-posts"]/li/div[@class="post-thumb"]/a/@href',
|
||||||
'._')
|
'._')
|
||||||
.split('._');
|
.split('._');
|
||||||
|
|
||||||
anime.names = MBridge.xpath(
|
anime.names = MBridge.xpath(
|
||||||
res,
|
res,
|
||||||
'//*[@class="lcp_catlist" and contains(@id,"lcp_instance_")]/li/a/text()',
|
'//*[@class="recent-posts"]/li/div[@class="post-thumb"]/a/@title',
|
||||||
'._')
|
'._')
|
||||||
.split('._');
|
.split('._');
|
||||||
|
|
||||||
anime.images = [];
|
anime.images = [];
|
||||||
|
|
||||||
return anime;
|
return anime;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -60,9 +92,9 @@ getAnimeDetail(MangaModel anime) async {
|
|||||||
return anime;
|
return anime;
|
||||||
}
|
}
|
||||||
|
|
||||||
getLatestUpdatesAnime(MangaModel anime) async {
|
getPopularAnime(MangaModel anime) async {
|
||||||
final data = {
|
final data = {
|
||||||
"url": "${anime.baseUrl}/page/${anime.page}/",
|
"url": "${anime.baseUrl}/liste-des-animes-2/",
|
||||||
"headers": null,
|
"headers": null,
|
||||||
"sourceId": anime.sourceId
|
"sourceId": anime.sourceId
|
||||||
};
|
};
|
||||||
@@ -72,53 +104,21 @@ getLatestUpdatesAnime(MangaModel anime) async {
|
|||||||
}
|
}
|
||||||
anime.urls = MBridge.xpath(
|
anime.urls = MBridge.xpath(
|
||||||
res,
|
res,
|
||||||
'//*[@class="recent-posts"]/li/div[@class="post-thumb"]/a/@href',
|
'//*[@class="lcp_catlist" and contains(@id,"lcp_instance_")]/li/a/@href',
|
||||||
'._')
|
'._')
|
||||||
.split('._');
|
.split('._');
|
||||||
|
|
||||||
anime.names = MBridge.xpath(
|
anime.names = MBridge.xpath(
|
||||||
res,
|
res,
|
||||||
'//*[@class="recent-posts"]/li/div[@class="post-thumb"]/a/@title',
|
'//*[@class="lcp_catlist" and contains(@id,"lcp_instance_")]/li/a/text()',
|
||||||
'._')
|
'._')
|
||||||
.split('._');
|
.split('._');
|
||||||
|
|
||||||
anime.images = [];
|
anime.images = [];
|
||||||
|
|
||||||
return anime;
|
return anime;
|
||||||
}
|
}
|
||||||
|
|
||||||
getVideoList(MangaModel anime) async {
|
|
||||||
final datas = {
|
|
||||||
"url": anime.link,
|
|
||||||
"headers": null,
|
|
||||||
"sourceId": anime.sourceId
|
|
||||||
};
|
|
||||||
|
|
||||||
final res = await MBridge.http(json.encode(datas), 0);
|
|
||||||
|
|
||||||
if (res.isEmpty) {
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
final serverUrls = MBridge.xpath(
|
|
||||||
res, '//*[@class="entry-content"]/div/div/iframe/@src', '._')
|
|
||||||
.split("._");
|
|
||||||
List<VideoModel> videos = [];
|
|
||||||
for (var i = 0; i < serverUrls.length; i++) {
|
|
||||||
final url = MBridge.listParse(serverUrls, 0)[i].toString();
|
|
||||||
print(url);
|
|
||||||
List<VideoModel> a = [];
|
|
||||||
if (url.startsWith("https://filemoon.")) {
|
|
||||||
} else if (url.startsWith("https://doodstream.")) {
|
|
||||||
a = await MBridge.doodExtractor(url);
|
|
||||||
} else if (url.startsWith("https://streamtape.")) {
|
|
||||||
a = await MBridge.streamTapeExtractor(url);
|
|
||||||
} else if (url.contains("streamsb")) {}
|
|
||||||
for (var vi in a) {
|
|
||||||
videos.add(vi);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return videos;
|
|
||||||
}
|
|
||||||
|
|
||||||
searchAnime(MangaModel anime) async {
|
searchAnime(MangaModel anime) async {
|
||||||
final data = {
|
final data = {
|
||||||
"url": "${anime.baseUrl}/liste-des-animes-2/",
|
"url": "${anime.baseUrl}/liste-des-animes-2/",
|
||||||
Reference in New Issue
Block a user