node-csfd-api
Version:
ČSFD API in JavaScript. Amazing NPM library for scrapping csfd.cz :)
32 lines (30 loc) • 1.46 kB
JavaScript
const require_index = require('../fetchers/index.js');
const require_vars = require('../vars.js');
const require_creator_helper = require('../helpers/creator.helper.js');
let node_html_parser = require("node-html-parser");
//#region src/services/creator.service.ts
var CreatorScraper = class {
async creator(creatorId, options) {
const id = Number(creatorId);
if (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) {
return {
id,
name: require_creator_helper.getCreatorName(asideEl),
birthday: require_creator_helper.getCreatorBirthdayInfo(asideEl)?.birthday,
birthplace: require_creator_helper.getCreatorBirthdayInfo(asideEl)?.birthPlace,
photo: require_creator_helper.getCreatorPhoto(asideEl),
age: require_creator_helper.getCreatorBirthdayInfo(asideEl)?.age || null,
bio: require_creator_helper.getCreatorBio(asideEl),
films: require_creator_helper.getCreatorFilms(filmsNode)
};
}
};
//#endregion
exports.CreatorScraper = CreatorScraper;
//# sourceMappingURL=creator.service.js.map