Table of Contents
Target
You decide, you can open issues what website/app and data to be scrapped.
Website
App
Progress
Anime/comic
Downloader
Maker
Nsfw
Usage
Installations.
Using GitHub version to test latest fix/update.
npm install github:xct007/frieren-scraper
Notice.
Package name changed to @xct007/frieren-scraper
Example use
Downloader
Youtube
import { youtube } from "@xct007/frieren-scraper";
const ArrObj = await youtube.search("rose gone mv");
console.log(ArrObj);
const Obj = await youtube.download("https://www.youtube.com/watch?v=xxx");
console.log(Obj);
Tiktok
import { tiktok } from "@xct007/frieren-scraper";
const Obj = await tiktok.v1("https://TIKTOK_URL");
console.log(Obj);
Instagram
import { instagram } from "@xct007/frieren-scraper";
const Obj = await instagram.v1("https://instagram_URL");
console.log(Obj);
Facebook.
import { facebook } from "@xct007/frieren-scraper";
const Obj = await facebook.v1("https://FACEBOOK_URL");
console.log(Obj);
Story WhatsApp Videos.
import { storyWa } from "@xct007/frieren-scraper";
const ArrObj = await storyWa.popular();
console.log(ArrObj);
const ArrObj = await storyWa.search("query");
console.log(ArrObj);
ZippyShare. (Not working)
import { zippyshare } from "@xct007/frieren-scraper";
const Obj = await zippyshare.download("https://ZIPPYSHARE_URL");
console.log(Obj);
Pinterest.
import { pinterest } from "@xct007/frieren-scraper";
const Obj = await pinterest.v1("https://PINTEREST_URL");
console.log(Obj);
Anime/comic.
Komiku.id.
import { komikuId } from "@xct007/frieren-scraper";
const ArrObj = await komikuId.latest();
console.log(ArrObj);
const ArrObj = await komikuId.search("query");
console.log(ArrObj);
const Obj = await komikuId.detail("https://KOMIKUID_URL");
console.log(Obj);
Otakudesu.
import { otakudesu } from "@xct007/frieren-scraper";
const ArrObj = await otakudesu.latest();
console.log(ArrObj);
const ArrObj = await otakudesu.search("query");
console.log(ArrObj);
const Obj = await otakudesu.detail("https://OTAKUDESU_URL");
console.log(Obj);
Anoboy.
import { anoboy } from "@xct007/frieren-scraper";
const ArrObj = await anoboy.latest();
console.log(ArrObj);
const ArrObj = await anoboy.search("query");
console.log(ArrObj);
const Obj = await anoboy.search("https://ANOBOY_URL");
console.log(Obj);
Doujindesu.
import { doujindesu } from "@xct007/frieren-scraper";
const ArrObj = await doujindesu.latest();
console.log(ArrObj);
const ArrObj = await doujindesu.search("query");
console.log(ArrObj);
const Obj = await doujindesu.detail("https://DOUJINDESU_URL");
console.log(Obj);
Searching
Unsplash.
import { unsplash } from "@xct007/frieren-scraper";
const ArrObj = await unsplash.search("query");
console.log(ArrObj);
Danbooru.
import { danbooru } from "@xct007/frieren-scraper";
const ArrObj = await danbooru.search("query");
console.log(ArrObj);
Music.
import { music } from "@xct007/frieren-scraper";
const ArrObj = await music.search("query");
console.log(ArrObj);
Apkmody.
import { apkmody } from "@xct007/frieren-scraper";
const ArrObj = await apkmody.search("query");
console.log(ArrObj);
const Obj = await apkmody.download("https://APKMODY_URL");
console.log(Obj);
Maker.
PhotoFunia.
import { photofunia } from "@xct007/frieren-scraper";
const ArrObj = await photofunia.listEffects();
console.log(ArrObj);
const key = "balloon".
const Obj = await photofunia.create(key, {
type: "text",
input: "Text should generate"
});
console.log(Obj);
const key = "the-frame".
const Obj = await photofunia.create(key, {
type: "image",
input: fs.readFileSync("./path_image.jpg")
});
console.log(Obj);
Image Diffusion.
import { diffusion } from "@xct007/frieren-scraper";
import { writeFileSync } from "fs";
const prompt = "1girl, blush, looking to viewer, warm smile,";
const seed = 123456789;
const Obj = await diffusion.stable(prompt, seed);
console.log(Obj);
const saveFilename = `./image.${Obj.ext}`;
const buffer = Buffer.from(Obj.base64Img, "base64");
writeFileSync(saveFilename, buffer);
type
type StableDiffusionResult = {
process_time: number;
seed: string;
ext: string;
mimetype: string;
base64Img: string;
};
h5.tu.qq
import { h5tuqq } from "@xct007/frieren-scraper";
const imageUrl = "https://itsrose.my.id/rose.jpeg"
const data = await h5tuqq(imageUrl);
if (!data.error) {
console.log(data);
} else {
console.log(data.message)
}
Nsfw
Bokepsin
import { bokepsin } from "@xct007/frieren-scraper";
const ArrObj = await bokepsin.latest();
console.log(ArrObj);
const ArrObj = await bokepsin.search("query");
console.log(ArrObj);
const Obj = await bokepsin.latest("URL");
console.log(ArrObj);
type
type BokepSinLatestSearchResults = {
title: string;
views: string;
duration: string;
url: string;
thumbnail: string;
}[];
type BokepSinDetail = {
title: string;
views: string;
duration: string;
thumbnail: string;
embed: string;
};
Error Handling
There is probably no need to use statement try/catch, it is already handle.
import { youtube } from "@xct007/frieren-scraper";
youtube.download("YOUTUBE_URL").then((Obj) => {
if (Obj.error) {
console.log(Obj.);
} else {
console.log(Obj);
}
});
const Obj = await youtube.download("YOUTUBE_URL");
if (Obj.error) {
console.log(Obj);
} else {
console.log(Obj);
}
Note.
This repository project is a learning exercise, and as such it utilizes references from other open source repositories. No commercial use is intended, and all efforts have been made to ensure proper attribution has been given to any referenced libraries and code.