UNPKG

cinemeta

Version:

Search Cinemeta Film Database with ease.

30 lines (27 loc) 938 B
const axios = require("axios"); const endpoint = "https://cinemeta.strem.io/stremioget/stremio/v1/q.json?b=eyJwYXJhbXMiOltudWxsLHt9XSwibWV0aG9kIjoibmFtZXMubW92aWUiLCJpZCI6MSwianNvbnJwYyI6IjIuMCJ9"; const searchDB = (searchStr) => (item) => item.imdb_id === searchStr || item.name === searchStr; class Cinemeta { /** * * @param {*} input Title (Film Name) or IMDB ID (e.g: tt8861802) * @returns Structured Data from Cinemeta: (e.g: { id: 'tt8861802', name: 'How High 2', year: '2019'}) */ async search(input) { let res = await axios.get(endpoint); let searchFor = searchDB(input); const result = res.data.result.filter(searchFor); const structure = { title: result[0].name, id: result[0].imdb_id, year: result[0].year, providers: { database: "cinemeta.strem.io", }, }; return structure; } } module.exports = new Cinemeta();