Comparing version 1.0.5 to 1.0.6
56
app.js
@@ -6,34 +6,18 @@ /** | ||
const request = require('request'); | ||
var request = require('request'); | ||
var jar = request.jar(); | ||
const cheerio = require('cheerio'); | ||
const _ = require('lodash'); | ||
var request = request.defaults({ | ||
jar: jar, | ||
followAllRedirects: true | ||
}); | ||
const Q = require('q'); | ||
exports.searchTorrentz2 = function(searchStr){ | ||
const deferred = Q.defer(); | ||
const option = {url: `https://torrentz2.eu/search?f=${searchStr}`}; | ||
request(option, function (err, resp, html) { | ||
const option_q = {url: `https://tortorrentz.com/search?q=${searchStr}`}; | ||
request.get(option_q, function (err, resp, html) { | ||
deferred.resolve(parseHtmlResponse(html)); | ||
var $ = cheerio.load(html); | ||
const values = _($('dl')).filter(tag => $($(tag).find('a[href]')).attr('href') && $($(tag).find('a[href]')).attr('href').indexOf('?') == -1) | ||
.map(extractHtmlData).filter(magnetObj => magnetObj.peers && magnetObj.seeds).sortBy(magnetObj => parseInt(magnetObj.seeds)).reverse() | ||
.value(); | ||
deferred.resolve(values); | ||
function extractHtmlData(obj){ | ||
const hash = $($(obj).find('a[href]')).attr('href').substring(1); | ||
const name = $($(obj).find('a[href]')).text(); | ||
const size = $($(obj).find('dd span')[2]).text(); | ||
const peers = $($(obj).find('dd span')[3]).text(); | ||
const seeds = $($(obj).find('dd span')[4]).text(); | ||
const magnet = `magnet:?xt=urn:btih:${hash}&dn=${encodeURI(name)}${getTrackerStr()}`; | ||
return {magnet,name,size,peers,seeds}; | ||
} | ||
}); | ||
@@ -58,1 +42,21 @@ return deferred.promise; | ||
function parseHtmlResponse(html){ | ||
var $ = cheerio.load(html); | ||
const values = _($('dl')).filter(tag => $($(tag).find('a[href]')).attr('href') && $($(tag).find('a[href]')).attr('href').indexOf('?') == -1) | ||
.map(extractHtmlData).filter(magnetObj => magnetObj.peers && magnetObj.seeds).sortBy(magnetObj => parseInt(magnetObj.seeds)).reverse() | ||
.value(); | ||
function extractHtmlData(obj){ | ||
const hash = $($(obj).find('a[href]')).attr('href').substring(1); | ||
const name = $($(obj).find('a[href]')).text(); | ||
const size = $($(obj).find('dd span')[2]).text(); | ||
const peers = $($(obj).find('dd span')[3]).text(); | ||
const seeds = $($(obj).find('dd span')[4]).text(); | ||
const magnet = `magnet:?xt=urn:btih:${hash}&dn=${encodeURI(name)}${getTrackerStr()}`; | ||
return {magnet,name,size,peers,seeds}; | ||
} | ||
return values; | ||
} |
{ | ||
"name": "torrentz2", | ||
"version": "1.0.5", | ||
"version": "1.0.6", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "main": "app.js", |
@@ -6,2 +6,2 @@ /** | ||
torrentz.searchTorrentz2('Ubuntu').then(console.log); | ||
torrentz.searchTorrentz2('Game of thrones s07e04').then(console.log); |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Deprecated
MaintenanceThe maintainer of the package marked it as deprecated. This could indicate that a single version should not be used, or that the package is no longer maintained and any new vulnerabilities will not be fixed.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
4741
6
64
1