Module Structure¶
The fubuki script must contain a variable extractor that is either a AnimeExtractor or MangaExtractor in its entrypoint file.
Objects¶
AnimeExtractor¶
Signature
{
defaultLocale: String,
search: (terms: String, locale: String) => List<SearchInfo>,
getInfo: (url: String, locale: String) => AnimeInfo,
getSources: (url: String, locale: String) => List<EpisodeSource>,
}
MangaExtractor¶
Signature
{
defaultLocale: String,
search: (terms: String, locale: String) => List<SearchInfo>,
getInfo: (url: String, locale: String) => MangaInfo,
getChapter: (url: String, locale: String) => List<PageInfo>,
getPage: (url: String, locale: String) => ImageDescriber,
}
SearchInfo¶
Signature
{
title: String,
url: String,
locale: String,
thumbnail: ImageDescriber?,
}
AnimeInfo¶
Signature
{
title: String,
url: String,
episodes: List<EpisodeInfo>,
locale: String,
availableLocales: String,
thumbnail: ImageDescriber?,
}
MangaInfo¶
Signature
{
title: String,
url: String,
chapters: List<ChapterInfo>,
locale: String,
availableLocales: String,
thumbnail: ImageDescriber?,
}
EpisodeInfo¶
Signature
{
chapter: String,
url: String,
locale: String,
}
EpisodeSource¶
Signature
{
url: String,
quality: "144p" | "360p" | "480p" | "720p" | "1080p"
| "144" | "360" | "480" | "720" | "1080" | "unknown"
| "sd" | "hd" | "fhd" | "?",
headers: Object,
locale: String,
}
ChapterInfo¶
Signature
{
chapter: String,
url: String,
locale: String,
title: String?,
volume: String?,
}
PageInfo¶
Signature
{
url: String,
locale: String,
}
ImageDescriber¶
Signature
{
url: String,
headers: Object,
}