anime-wallpaper
Advanced tools
Comparing version 1.1.1 to 2.0.0
{ | ||
"alphaCoders": "https://wall.alphacoders.com/search.php", | ||
"wallpaperCave": "https://wallpapercave.com", | ||
"free4kWallpaper": "https://free4kwallpapers.com", | ||
"wallHaven": "https://wallhaven.cc", | ||
"zerochan": "https://www.zerochan.net", | ||
"wallpapers": "https://wallpapers.com", | ||
"type": { | ||
@@ -8,0 +7,0 @@ "sfw": "100", |
@@ -1,20 +0,28 @@ | ||
import { dataImageFormat1, dataImageFormat2, dataImageFormat3, searchOpt, searchOpt2 } from "./typings"; | ||
import { dataImageFormat, searchOpt } from "./typings"; | ||
export declare enum AnimeSource { | ||
WallHaven = 2, | ||
ZeroChan = 3, | ||
Wallpapers = 4 | ||
} | ||
export declare class AnimeWallpaper { | ||
constructor(); | ||
/** | ||
* Scraping images wallpaper from AlphaCoders | ||
* Universal search function for all websites | ||
* | ||
* @param {Object} | ||
* @param {string} title.search the title of anime you want to search. | ||
* @param {string|number} title.page the page for image you want to search. | ||
* @returns {dataImageFormat1} | ||
* this function will return an array of queried anime wallpapers | ||
* | ||
* @param search.title the title of the anime you want to search. | ||
* @param search.type the type or purity of image sfw or sketchy image or even both. | ||
* @param search.page the page for image you want to search, default is 1 | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall1(title: searchOpt): Promise<dataImageFormat1[]>; | ||
search(options: searchOpt, source?: AnimeSource): Promise<dataImageFormat[]>; | ||
/** | ||
* Scraping images wallpaper from WallpaperCave | ||
* Scrapes 4kWallpaper for a random Wallpaper | ||
* | ||
* @param title the title of anime that you want to search. | ||
* @returns {dataImageFormat2} | ||
* This function will return an array of random Wallpapers | ||
* | ||
* @returns {dataImageFormat} | ||
*/ | ||
private getAnimeWall2; | ||
random(): Promise<dataImageFormat[]>; | ||
/** | ||
@@ -25,6 +33,13 @@ * Scraping images wallpaper from free4kWallpaper | ||
* | ||
* @returns {dataImageFormat2} | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall3(): Promise<dataImageFormat2[]>; | ||
scrapeFrom4kWallpaper(): Promise<dataImageFormat[]>; | ||
/** | ||
* Scraping images wallpaper from Wallpapers.com | ||
* | ||
* @param search.title the title of the anime you want to search. | ||
* @returns {dataImageFormat} | ||
*/ | ||
scrapeFromWallpapersDotCom(search: searchOpt): Promise<dataImageFormat[]>; | ||
/** | ||
* Scraping images wallpaper from WallHaven | ||
@@ -35,13 +50,13 @@ * | ||
* @param search.page the page for image you want to search, default is 1 | ||
* @returns {dataImageFormat3} | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall4(search: searchOpt2): Promise<dataImageFormat3[]>; | ||
scrapeFromWallHaven(search: searchOpt): Promise<dataImageFormat[]>; | ||
/** | ||
* Scraping images wallpaper from zerochan | ||
* | ||
* @param title the title of anime that you want to search. | ||
* @returns {dataImageFormat2} | ||
*/ | ||
getAnimeWall5(title: string): Promise<dataImageFormat1[]>; | ||
* Scraping images wallpaper from zerochan | ||
* | ||
* @param search.title the title of anime that you want to search. | ||
* @returns {dataImageFormat} | ||
*/ | ||
scrapeFromZeroChan(search: searchOpt): Promise<dataImageFormat[]>; | ||
private _request; | ||
} |
@@ -21,2 +21,11 @@ "use strict"; | ||
}; | ||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
return new (P || (P = Promise))(function (resolve, reject) { | ||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
}); | ||
}; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
@@ -26,3 +35,3 @@ return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.AnimeWallpaper = void 0; | ||
exports.AnimeWallpaper = exports.AnimeSource = void 0; | ||
const node_superfetch_1 = __importDefault(require("node-superfetch")); | ||
@@ -33,78 +42,42 @@ const random_useragent_1 = __importDefault(require("random-useragent")); | ||
const Error_1 = __importDefault(require("./utils/Error")); | ||
var AnimeSource; | ||
(function (AnimeSource) { | ||
AnimeSource[AnimeSource["WallHaven"] = 2] = "WallHaven"; | ||
AnimeSource[AnimeSource["ZeroChan"] = 3] = "ZeroChan"; | ||
AnimeSource[AnimeSource["Wallpapers"] = 4] = "Wallpapers"; | ||
})(AnimeSource = exports.AnimeSource || (exports.AnimeSource = {})); | ||
class AnimeWallpaper { | ||
constructor() { } | ||
/** | ||
* Scraping images wallpaper from AlphaCoders | ||
* Universal search function for all websites | ||
* | ||
* @param {Object} | ||
* @param {string} title.search the title of anime you want to search. | ||
* @param {string|number} title.page the page for image you want to search. | ||
* @returns {dataImageFormat1} | ||
* this function will return an array of queried anime wallpapers | ||
* | ||
* @param search.title the title of the anime you want to search. | ||
* @param search.type the type or purity of image sfw or sketchy image or even both. | ||
* @param search.page the page for image you want to search, default is 1 | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall1(title) { | ||
if (!title || !title.search) | ||
throw new Error_1.default("title must be specified"); | ||
else if (!title.page) | ||
title.page = 0; | ||
if (typeof title.page === "string") | ||
console.warn("Use number instead of a string on `page` options, this is will not be affected"); | ||
return new Promise((resolve, reject) => { | ||
this._request(config_json_1.default.alphaCoders, { search: encodeURIComponent(title.search) }) | ||
.then(x => { | ||
void this._request(`${x.url}${x.url.includes("?") ? "&" : "?"}page=${title.page}`, {}) | ||
.then((data) => { | ||
const $ = cheerio_1.default.load(data.text); | ||
const arr = []; | ||
$("#big_container .page_container .thumb-container").each((i, elm) => { | ||
var _a; | ||
const title = $(elm).find("img").attr("alt"); | ||
const thumbnail = $(elm).find("[class=\"boxgrid\"] a source").attr("srcset"); | ||
const image = (_a = $(elm).find("img").attr("src")) === null || _a === void 0 ? void 0 : _a.replace(/thumbbig-/g, ""); | ||
arr.push({ title, thumbnail, image }); | ||
}); | ||
if (!arr.length) | ||
throw new Error_1.default("No result found"); | ||
resolve(arr); | ||
}) | ||
.catch(er => reject(er)); | ||
}) | ||
.catch(er => reject(er)); | ||
search(options, source = AnimeSource.WallHaven) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
switch (source) { | ||
case AnimeSource.WallHaven: | ||
return yield this.scrapeFromWallHaven(options); | ||
case AnimeSource.ZeroChan: | ||
return yield this.scrapeFromZeroChan(options); | ||
case AnimeSource.Wallpapers: | ||
return yield this.scrapeFromWallpapersDotCom(options); | ||
} | ||
}); | ||
} | ||
/** | ||
* Scraping images wallpaper from WallpaperCave | ||
* Scrapes 4kWallpaper for a random Wallpaper | ||
* | ||
* @param title the title of anime that you want to search. | ||
* @returns {dataImageFormat2} | ||
* This function will return an array of random Wallpapers | ||
* | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall2(title) { | ||
if (!title) | ||
throw new Error_1.default("title must be specified"); | ||
return new Promise((resolve, reject) => { | ||
this._request(`${config_json_1.default.wallpaperCave}/search`, { q: title.split(" ").join("+") }) | ||
.then(x => { | ||
const $ = cheerio_1.default.load(x.text); | ||
const arr = []; | ||
const results = []; | ||
$("#content #popular a").each((i, elm) => { | ||
const title = $(elm).attr("href"); | ||
results.push(title); | ||
}); | ||
const filteredRes = results.filter(x => !x.startsWith("/w/") && !x.startsWith("/latest-upload")); | ||
if (!filteredRes.length) | ||
throw new Error_1.default("No result found"); | ||
const random = filteredRes[Math.floor(Math.random() * filteredRes.length)]; | ||
this._request(`${config_json_1.default.wallpaperCave}${random}`, {}) | ||
.then(res => { | ||
const $$ = cheerio_1.default.load(res.text); | ||
$$("#albumwp .wallpaper").each((i, elm) => { | ||
const title = $$(elm).find("a.wpinkw img").attr("alt"); | ||
const image = `${config_json_1.default.wallpaperCave}${$$(elm).find("a.wpinkw img").attr("src")}`; | ||
arr.push({ title, image }); | ||
}); | ||
resolve(arr); | ||
}) | ||
.catch(er => reject(er)); | ||
}) | ||
.catch(er => reject(er)); | ||
random() { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
return yield this.scrapeFrom4kWallpaper(); | ||
}); | ||
@@ -117,5 +90,5 @@ } | ||
* | ||
* @returns {dataImageFormat2} | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall3() { | ||
scrapeFrom4kWallpaper() { | ||
const random = Math.floor(Math.random() * 20) + 1; | ||
@@ -140,2 +113,31 @@ return new Promise((resolve, reject) => { | ||
/** | ||
* Scraping images wallpaper from Wallpapers.com | ||
* | ||
* @param search.title the title of the anime you want to search. | ||
* @returns {dataImageFormat} | ||
*/ | ||
scrapeFromWallpapersDotCom(search) { | ||
if (!search || !search.title) | ||
throw new Error_1.default("title must be specified"); | ||
return new Promise((resolve, reject) => { | ||
this._request(`${config_json_1.default.wallpapers}/search/${search.title}`, {}) | ||
.then(x => { | ||
const $ = cheerio_1.default.load(x.text); | ||
const results = []; | ||
$(".tab-content ul.kw-contents li").each((i, elm) => { | ||
const title = $(elm).find(" figure").data("title"); | ||
const thumbnail = $(elm).find(" a").attr("href"); | ||
const image = `${config_json_1.default.wallpapers}/downloads/high/${$(elm).find("figure").data("key")}.png`; | ||
results.push({ title, thumbnail, image }); | ||
}); | ||
const filteredImage = results.filter(e => { var _a; return ((_a = e.title) === null || _a === void 0 ? void 0 : _a.length) !== undefined; }); | ||
if (!filteredImage.length) | ||
throw new Error_1.default("Image data is empty or can't find the images"); | ||
else | ||
resolve(filteredImage); | ||
}) | ||
.catch(er => reject(er)); | ||
}); | ||
} | ||
/** | ||
* Scraping images wallpaper from WallHaven | ||
@@ -146,9 +148,9 @@ * | ||
* @param search.page the page for image you want to search, default is 1 | ||
* @returns {dataImageFormat3} | ||
* @returns {dataImageFormat} | ||
*/ | ||
getAnimeWall4(search) { | ||
scrapeFromWallHaven(search) { | ||
if (!search || !search.title) | ||
throw new Error_1.default("title must be specified"); | ||
else if (!search.type) | ||
search.type === "sfw"; | ||
search.type = "sfw"; | ||
else if (!Object.keys(config_json_1.type).includes(search.type)) | ||
@@ -179,12 +181,12 @@ throw new Error_1.default("Please input on of them 'sfw, sketchy, both'"); | ||
/** | ||
* Scraping images wallpaper from zerochan | ||
* | ||
* @param title the title of anime that you want to search. | ||
* @returns {dataImageFormat2} | ||
*/ | ||
getAnimeWall5(title) { | ||
if (!title) | ||
* Scraping images wallpaper from zerochan | ||
* | ||
* @param search.title the title of anime that you want to search. | ||
* @returns {dataImageFormat} | ||
*/ | ||
scrapeFromZeroChan(search) { | ||
if (!search.title) | ||
throw new Error_1.default("title must be specified"); | ||
return new Promise((resolve, reject) => { | ||
this._request(`${config_json_1.default.zerochan}/${title}`, {}) | ||
this._request(`${config_json_1.default.zerochan}/${search.title}`, {}) | ||
.then(x => { | ||
@@ -212,3 +214,3 @@ const $ = cheerio_1.default.load(x.text); | ||
.then(x => resolve(x)) | ||
.catch(er => reject(`Upss: ${er.message}`)); | ||
.catch((e) => reject(`Upss: ${e.message}`)); | ||
}); | ||
@@ -218,2 +220,2 @@ } | ||
exports.AnimeWallpaper = AnimeWallpaper; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNFQUFrQztBQUNsQyx3RUFBeUM7QUFDekMsc0RBQThCO0FBQzlCLDZEQUE0QztBQUM1QywwREFBc0M7QUFHdEMsTUFBYSxjQUFjO0lBQ3ZCLGdCQUF1QixDQUFDO0lBRXhCOzs7Ozs7O09BT0c7SUFDSSxhQUFhLENBQUMsS0FBZ0I7UUFDakMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQUUsTUFBTSxJQUFJLGVBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2FBQ3ZFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSTtZQUFFLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLElBQUksT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVE7WUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLGdGQUFnRixDQUFDLENBQUM7UUFDbkksT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLHFCQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2lCQUMxRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ04sS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztxQkFDakYsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVB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 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNFQUFrQztBQUNsQyx3RUFBeUM7QUFDekMsc0RBQThCO0FBQzlCLDZEQUE0QztBQUM1QywwREFBc0M7QUFHdEMsSUFBWSxXQUlYO0FBSkQsV0FBWSxXQUFXO0lBQ25CLHVEQUFhLENBQUE7SUFDYixxREFBWSxDQUFBO0lBQ1oseURBQWMsQ0FBQTtBQUNsQixDQUFDLEVBSlcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUFJdEI7QUFHRCxNQUFhLGNBQWM7SUFDdkIsZ0JBQXVCLENBQUM7SUFFeEI7Ozs7Ozs7OztPQVNHO0lBQ1UsTUFBTSxDQUFDLE9BQWtCLEVBQUUsU0FBc0IsV0FBVyxDQUFDLFNBQVM7O1lBQy9FLFFBQVEsTUFBTSxFQUFFO2dCQUNaLEtBQUssV0FBVyxDQUFDLFNBQVM7b0JBQ3RCLE9BQU8sTUFBTSxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ25ELEtBQUssV0FBVyxDQUFDLFFBQVE7b0JBQ3JCLE9BQU8sTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ2xELEtBQUssV0FBVyxDQUFDLFVBQVU7b0JBQ3ZCLE9BQU8sTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsT0FBTyxDQUFDLENBQUE7YUFDNUQ7UUFDTCxDQUFDO0tBQUE7SUFFRDs7Ozs7O09BTUc7SUFDVSxNQUFNOztZQUNmLE9BQU8sTUFBTSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM5QyxDQUFDO0tBQUE7SUFFRDs7Ozs7O09BTUc7SUFDSSxxQkFBcUI7UUFDeEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEdB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 |
@@ -1,21 +0,10 @@ | ||
export interface dataImageFormat1 { | ||
title: string; | ||
thumbnail: string; | ||
image: string; | ||
export interface dataImageFormat { | ||
title?: string; | ||
thumbnail?: string; | ||
image?: string; | ||
} | ||
export interface dataImageFormat2 { | ||
export interface searchOpt { | ||
title: string; | ||
image: string; | ||
} | ||
export interface dataImageFormat3 { | ||
image: string; | ||
} | ||
export interface searchOpt { | ||
search: string; | ||
page: string | number; | ||
} | ||
export interface searchOpt2 { | ||
title: string; | ||
page: string; | ||
type: "sfw" | "sketchy" | "both"; | ||
} |
{ | ||
"name": "anime-wallpaper", | ||
"version": "1.1.1", | ||
"version": "2.0.0", | ||
"description": "Get Anime wallpapers based on scrapping from websites.", | ||
@@ -28,2 +28,3 @@ "license": "MIT", | ||
"dependencies": { | ||
"axios": "^1.1.3", | ||
"cheerio": "^1.0.0-rc.5", | ||
@@ -30,0 +31,0 @@ "node-superfetch": "^0.1.11", |
<h1 align="center">Anime Wallpaper</h1> | ||
<p align="center"> | ||
<a href="https://github.com/beyluta/WinWidgets"> | ||
<img src="https://img.shields.io/npm/v/anime-wallpaper.svg?logo=npm&logoColor=fff&label=Version&color=limegreen" alt="Version" /> | ||
</a> | ||
<a href="https://www.npmjs.com/package/anime-wallpaper"> | ||
<img src="https://img.shields.io/npm/v/anime-wallpaper.svg?logo=npm&logoColor=fff&label=NPM+package&color=red" alt="Anime Wallpaper on npm" /> | ||
</a> | ||
</p> | ||
<p align="center"> | ||
@@ -7,6 +15,7 @@ <img src="https://i.imgur.com/DeP0Nlv.jpeg"> | ||
Get Anime wallpapers based on scrapping from websites. | ||
* [Alphacoders](https://alphacoders.com) | ||
* ~~[Wallpaper Cave](https://wallpapercave.com)~~ *Not working | ||
* [4K Wallpapers](https://free4kwallpapers.com/) | ||
* [Wall Haven](https://wallhaven.cc) | ||
* [ZeroChan](https://www.zerochan.net) | ||
* [Wallpapers.com](https://wallapapers.com) | ||
<br> | ||
@@ -16,62 +25,51 @@ [![Version](https://nodei.co/npm/anime-wallpaper.png?compact=true)](https://nodei.co/npm/anime-wallpaper) | ||
# Installing | ||
``` | ||
npm install anime-wallpaper | ||
``` | ||
# Example Usage | ||
- Getting Wallpaper from [Alphacoders](https://alphacoders.com) (dynamic) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
At the head of your file, start by importing the necessary classes | ||
```js | ||
const { AnimeWallpaper } = require("anime-wallpaper"); | ||
const wall = new AnimeWallpaper(); | ||
const { AnimeWallpaper, AnimeSource } = require('anime-wallpaper'); | ||
const wallpaper = new AnimeWallpaper(); | ||
``` | ||
async function Wallpaper1() { | ||
const wallpaper = await wall.getAnimeWall1({ search: "to love ru", page: 1 }) | ||
return console.log(wallpaper) | ||
} | ||
- Getting a random wallpaper from [4K Wallpapers](https://free4kwallpapers.com/) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
Wallpaper1() | ||
```js | ||
const wallpaper = await wallpaper.random(); | ||
``` | ||
- ~~Getting Wallpaper from [Wallpaper Cave](https://wallpapercave.com)~~ <img align="center" width="15" src="https://cdn.discordapp.com/emojis/743459759302377574.webp?size=128&quality=lossless"> | ||
- Getting Wallpaper from [WallHaven](https://wallhaven.cc) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
```js | ||
async function Wallpaper2() { | ||
const wallpaper = await wall.getAnimeWall2("keqing") | ||
return console.log(wallpaper) | ||
} | ||
Wallpaper2() | ||
const wallpaper = await wallpaper.search({ title: "Misaka Mikoto" }, AnimeSource.WallHaven); | ||
``` | ||
- Getting Random Wallpaper from [4K Wallpapers](https://free4kwallpapers.com/) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
- Getting Wallpaper from [Wallpapers.com](https://wallpapers.com) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
```js | ||
async function Wallpaper3() { | ||
const wallpaper = await wall.getAnimeWall3() | ||
return console.log(wallpaper) | ||
} | ||
Wallpaper3() | ||
const wallpaper = await wallpaper.search({ title: "Keqing" }, AnimeSource.Wallpapers); | ||
``` | ||
- Getting Wallpaper from [WallHaven](https://wallhaven.cc) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
- Getting Wallpaper from [ZeroChan](https://www.zerochan.net) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
```js | ||
async function Wallpaper4() { | ||
const wallpaper = await wall.getAnimeWall4({ title: "anime romance", type: "sfw", page: 1 }) | ||
return console.log(wallpaper) | ||
} | ||
Wallpaper4() | ||
const wallpaper = await wallpaper.search({ title: "Misaka Mikoto" }, AnimeSource.ZeroChan); | ||
``` | ||
## Warning | ||
In some rare cases, the fetching process might fail due to inconsistencies when scraping websites.<br><br> | ||
- Getting Wallpaper from [ZeroChan](https://www.zerochan.net) (dynamic) <img align="center" width="15" src="https://cdn.discordapp.com/emojis/735119429016485920.webp?size=128&quality=lossless"> | ||
```js | ||
async function Wallpaper5() { | ||
const wallpaper = await wall.getAnimeWall5("Makima") | ||
return console.log(wallpaper) | ||
} | ||
# Contributors | ||
Fork then clone the project and install its dependencies: | ||
``` | ||
npm i | ||
``` | ||
Wallpaper5() | ||
In the root folder of the project type the following to compile the .ts into .js | ||
``` | ||
### IMPORTANT!!!! | ||
Nb: function which has *dynamic* tag sometimes image url doesn't load or render because it's a dynamic website, you can re-fetch again to get image url | ||
tsc | ||
``` | ||
@@ -78,0 +76,0 @@ <hr> |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
310
26780
4
77
1
+ Addedaxios@^1.1.3
+ Addedaxios@1.7.9(transitive)
+ Addedfollow-redirects@1.15.9(transitive)
+ Addedform-data@4.0.1(transitive)
+ Addedproxy-from-env@1.1.0(transitive)