UNPKG

@lucasmod/modulo-torrent

Version:

MΓ³dulo para scraping de torrents, desenvolvido por @lucas_mod_domina.

48 lines (44 loc) β€’ 1.68 kB
// By: π–§„ 𝐋𝐔𝐂𝐀𝐒 πŒπŽπƒ πƒπŽπŒπˆππ€ π–§„ // Canal: https://whatsapp.com/channel/0029Va6riekH5JLwLUFI7P2B const request = require('request') const cheerio = require('cheerio') const baseUrl = 'https://limontorrents.com' const headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' } const parseMovie = require('./scrapers/parseMovie.js') const getDestaques = require('./scrapers/getDestaques.js') const getUltimosAdicionados = require('./scrapers/getUltimosAdicionados.js') const getPagination = require('./scrapers/getPagination.js') function scrape(extractFunction, callback, page) { const urlToScrape = page ? `${baseUrl}/page/${page}` : baseUrl request({ url: urlToScrape, headers }, (error, response, body) => { if (error || response.statusCode !== 200) { console.error('Erro durante o scraping:', error ? error.message : `Status code ${response.statusCode}`) return callback({ criador: '@lucas_mod_domina', status: false, mensagem: error ? error.message : `Erro HTTP ${response.statusCode}` }) } try { const $ = cheerio.load(body) const resultData = extractFunction($) callback({ criador: '@lucas_mod_domina', status: true, resultados: resultData }) } catch (e) { console.error('Erro ao processar conteΓΊdo:', e) callback({ criador: '@lucas_mod_domina', status: false, mensagem: 'Erro ao analisar o conteΓΊdo' }) } }) } module.exports = { getDestaques: (callback) => scrape(getDestaques, callback), getUltimosAdicionados: (callback) => scrape(getUltimosAdicionados, callback), getPagination: (callback, page) => scrape(getPagination, callback, page) }