@suzakuteam/scraper-node
Version:
Sebuah Module Scraper yang dibuat oleh Sxyz dan SuzakuTeam untuk memudahkan penggunaan scraper di project ESM maupun CJS.
743 lines (731 loc) • 19.6 kB
JavaScript
import axios from "axios";
import { Success, ErrorResponse } from "../../esm/lib/function.js";
/*
ResitaAPI (ESM)
Modular API client based on categories: AI, Downloader, Search, etc.
*/
const ai = {
aicoding: async (prompt) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/ai/aicoding?prompt=${encodeURIComponent(prompt)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
claude: async (prompt) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/ai/claude?prompt=${encodeURIComponent(prompt)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
chatgpt: async (prompt) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/ai/chatgpt?prompt=${encodeURIComponent(prompt)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
gptlogic: async (prompt, logic) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/ai/gptlogic?prompt=${encodeURIComponent(prompt)}&logic=${encodeURIComponent(logic)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
venice: async (prompt) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/ai/venice?prompt=${encodeURIComponent(prompt)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const counter = {
create: async (sites) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/count/create?sites=${encodeURIComponent(sites)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
view: async (sites) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/count/view?sites=${encodeURIComponent(sites)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
hit: async (sites) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/count/hit?sites=${encodeURIComponent(sites)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const downloader = {
capcut: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/capcut?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
douyin: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/douyin?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
facebook: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/facebook?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
fdroid: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/fdroid?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
gdrive: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/gdrive?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
github: async (repo) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/github?repo=${encodeURIComponent(repo)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
instagram: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/instagram?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
mediafire: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/mediafire?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
spotify: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/spotify?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
snackvideo: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/snackvideo?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
soundcloud: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/soundcloud?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
terabox: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/terabox?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
tiktok: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/tiktok?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
threads: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/threads?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
twitter: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/twitter?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
ytmp3: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/ytmp3?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
ytmp4: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/ytmp4?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
xnxx: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/downloader/xnxx?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const sticker = {
gif: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/sticker/gif?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const search = {
bstation: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/bstation?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
cuaca: async (kota) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/cuaca?kota=${encodeURIComponent(kota)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
fdroid: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/fdroid?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
gempa: async () => {
try {
const { data } = await axios.get(`https://api.ferdev.my.id/search/gempa`);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
grupwa: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/grupwa?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
lirik: async (judul) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/lirik?judul=${encodeURIComponent(judul)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
livewallpaper: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/livewallpaper?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
pinterest: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/pinterest?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
playstore: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/playstore?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
jadwalsholat: async (kota) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/jadwalsholat?kota=${encodeURIComponent(kota)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
jadwaltv: async (channel) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/jadwaltv?channel=${encodeURIComponent(channel)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
resep: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/resep?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
sfile: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/sfile?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
spotify: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/spotify?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
soundcloud: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/soundcloud?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
tiktok: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/tiktok?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
whatmusic: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/whatmusic?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
xnxx: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/xnxx?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
youtube: async (query) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/search/youtube?query=${encodeURIComponent(query)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const tools = {
ocr: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/ocr?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
remini: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/remini?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
removebg: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/removebg?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
ssweb: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/ssweb?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
shortlink: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/shortlink?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
text2qr: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/text2qr?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
toanime: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/toanime?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
tozombie: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/tozombie?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
text2img: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/text2img?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
text2imgv2: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/text2imgv2?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
yttranscript: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/tools/yttranscript?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const maker = {
brat: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/brat?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
bratv2: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/bratv2?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
bratvid: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/bratvid?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
carbon: async (text) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/carbon?text=${encodeURIComponent(text)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
emojimix: async (e1, e2) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/emojimix?e1=${encodeURIComponent(e1)}&e2=${encodeURIComponent(e2)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
fluximage: async (prompt) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/fluximage?prompt=${encodeURIComponent(prompt)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
tohitam: async (link) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/maker/tohitam?link=${encodeURIComponent(link)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const internet = {
githubroast: async (username) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/internet/githubroast?username=${encodeURIComponent(username)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
infoua: async (ua) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/internet/infoua?ua=${encodeURIComponent(ua)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
infoip: async (ip) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/internet/infoip?ip=${encodeURIComponent(ip)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
tempmail: async () => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/internet/tempmail`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
mailbox: async (id) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/internet/mailbox?id=${encodeURIComponent(id)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
whois: async (domain) => {
try {
const { data } = await axios.get(
`https://api.ferdev.my.id/internet/whois?domain=${encodeURIComponent(domain)}`,
);
return new Success(data);
} catch (err) {
return new ErrorResponse(err);
}
},
};
const ResitaAPI = {
ai,
counter,
downloader,
sticker,
search,
tools,
maker,
internet,
};
export { ResitaAPI };