UNPKG

newpct-scrapper

Version:
61 lines (44 loc) 1.64 kB
'use strict'; var _minimist = require('minimist'); var _minimist2 = _interopRequireDefault(_minimist); var _open = require('open'); var _open2 = _interopRequireDefault(_open); var _lib = require('./lib'); var _utils = require('./utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const argv = (0, _minimist2.default)(process.argv.slice(2)); const err = err => { console.error(err);process.exit(1); }; if (argv.h || argv.help) { console.log(` uso: newpct [options] <nombre de lo que quieras> options: --no-filter No filtra los resultados -h, --help Mostrar la ayuda -v, --version Mostrar la versión del paquete -r, --regex Usar una expresión regular de javascript para filtrar `); process.exit(); } if (argv.v || argv.version) { console.log(require('../package.json').version); process.exit(); } const query = argv._.join(' '); if (!query) err('La búsqueda no puede estar vacía'); let filter = argv.f || argv.filter; if (filter == null) filter = true; let regex = (0, _utils.string2regex)(query); if (argv.r || argv.regex) regex = RegExp(argv.r || argv.regex, 'i'); async function main() { let torrents = await (0, _lib.search)(query); if (filter) torrents = torrents.filter(torrent => regex.test(torrent.title)); if (!torrents.length) err(`0 resultados para "${query}"`); torrents.sort((a, b) => b.size - a.size); (0, _utils.printTable)(torrents); let index = await (0, _utils.getIndex)(torrents); let magnet = await torrents[index - 1].magnet; (0, _open2.default)(magnet); } main().catch(err);