UNPKG

node-csfd-api

Version:

ČSFD API in JavaScript. Amazing NPM library for scrapping csfd.cz :)

33 lines (32 loc) 1.52 kB
const require_vars = require("../vars.cjs"); const require_index = require("../fetchers/index.cjs"); const require_global_helper = require("../helpers/global.helper.cjs"); const require_creator_helper = require("../helpers/creator.helper.cjs"); let node_html_parser = require("node-html-parser"); //#region src/services/creator.service.ts var CreatorScraper = class { async creator(creatorId, options) { const id = require_global_helper.extractId(creatorId); if (id === null || isNaN(id)) throw new Error("node-csfd-api: creatorId must be a valid number"); const creatorHtml = (0, node_html_parser.parse)(await require_index.fetchPage(require_vars.creatorUrl(id, { language: options?.language }), { ...options?.request })); const asideNode = creatorHtml.querySelector(".creator-about"); const filmsNode = creatorHtml.querySelector(".creator-filmography"); return this.buildCreator(+creatorId, asideNode, filmsNode); } buildCreator(id, asideEl, filmsNode) { const birthdayInfo = require_creator_helper.getCreatorBirthdayInfo(asideEl); return { id, name: require_creator_helper.getCreatorName(asideEl), birthday: birthdayInfo?.birthday, birthplace: birthdayInfo?.birthPlace, photo: require_creator_helper.getCreatorPhoto(asideEl), age: birthdayInfo?.age || null, bio: require_creator_helper.getCreatorBio(asideEl), films: require_creator_helper.getCreatorFilms(filmsNode) }; } }; //#endregion exports.CreatorScraper = CreatorScraper; //# sourceMappingURL=creator.service.cjs.map