tor-dl 1.0.5 → 1.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -3
- package/dist/cli/parser.d.ts.map +1 -1
- package/dist/cli/parser.js +3 -4
- package/dist/cli/parser.js.map +1 -1
- package/dist/download/engine.d.ts.map +1 -1
- package/dist/download/engine.js +2 -1
- package/dist/download/engine.js.map +1 -1
- package/dist/sources/torrentscsv.d.ts.map +1 -1
- package/dist/sources/torrentscsv.js +1 -1
- package/dist/sources/torrentscsv.js.map +1 -1
- package/filters.json +2 -2
- package/package.json +1 -1
- package/sources.json +1 -1
- package/src/cli/parser.ts +3 -4
- package/src/download/engine.ts +2 -1
- package/src/sources/torrentscsv.ts +1 -1
- package/help.txt +0 -30
- package/output.txt +0 -0
package/README.md
CHANGED
|
@@ -5,7 +5,11 @@ A CLI torrent search tool. Search across multiple sources, open .torrent in brow
|
|
|
5
5
|
## Quick Start
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
#
|
|
8
|
+
# Run without installation (requires Node.js)
|
|
9
|
+
npx tor-dl search "movie title"
|
|
10
|
+
|
|
11
|
+
# Install globally for easy use
|
|
12
|
+
npm install -g tor-dl
|
|
9
13
|
tor-dl search "movie title"
|
|
10
14
|
|
|
11
15
|
# Copy magnet link to clipboard
|
|
@@ -49,7 +53,6 @@ tor-dl search <query> [options]
|
|
|
49
53
|
|
|
50
54
|
**Available Sources:**
|
|
51
55
|
- `yts` - YTS (Movies only)
|
|
52
|
-
- `eztv` - EZTV (TV shows)
|
|
53
56
|
- `thepiratebay` - The Pirate Bay (All categories)
|
|
54
57
|
- `nyaa` - Nyaa.si (Anime, Software)
|
|
55
58
|
|
|
@@ -113,7 +116,6 @@ tor-dl open <number>
|
|
|
113
116
|
| YTS | movie | Movie torrents with direct .torrent download |
|
|
114
117
|
| The Pirate Bay | all | General torrent search |
|
|
115
118
|
| Nyaa | anime, tv | Anime and Japanese media |
|
|
116
|
-
| EZTV | tv | TV show torrents |
|
|
117
119
|
|
|
118
120
|
## Size Format
|
|
119
121
|
|
|
@@ -129,6 +131,7 @@ Examples: `500MB`, `1.5GB`, `2GB`
|
|
|
129
131
|
|
|
130
132
|
- Node.js >= 18.0.0
|
|
131
133
|
- npm
|
|
134
|
+
- Transmission (optional, for Windows)
|
|
132
135
|
|
|
133
136
|
## Local Installation
|
|
134
137
|
|
|
@@ -139,6 +142,20 @@ npm install
|
|
|
139
142
|
npm run build
|
|
140
143
|
```
|
|
141
144
|
|
|
145
|
+
## Install Transmission (Windows)
|
|
146
|
+
|
|
147
|
+
For Windows users, you can install Transmission client using winget:
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
winget install Transmission.Transmission
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
After installation, you can open magnet links directly in Transmission.
|
|
154
|
+
|
|
155
|
+
## Author
|
|
156
|
+
|
|
157
|
+
Sedat ERGOZ [@eaeoz](https://github.com/eaeoz)
|
|
158
|
+
|
|
142
159
|
## License
|
|
143
160
|
|
|
144
161
|
MIT License
|
package/dist/cli/parser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/cli/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAiB,MAAM,UAAU,CAAC;AAWvD,wBAAgB,WAAW,IAAI,YAAY,CAc1C;AAED,wBAAgB,YAAY,IAAI,OAAO,
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/cli/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAiB,MAAM,UAAU,CAAC;AAWvD,wBAAgB,WAAW,IAAI,YAAY,CAc1C;AAED,wBAAgB,YAAY,IAAI,OAAO,CAsFtC"}
|
package/dist/cli/parser.js
CHANGED
|
@@ -68,7 +68,7 @@ function createParser() {
|
|
|
68
68
|
const mainHelp = `
|
|
69
69
|
Categories: all, movie, tv, anime, music, games, apps
|
|
70
70
|
Sources:
|
|
71
|
-
yts - YTS (Movies) |
|
|
71
|
+
yts - YTS (Movies) | thepiratebay - The Pirate Bay | nyaa - Nyaa.si (Anime)`;
|
|
72
72
|
program
|
|
73
73
|
.name('tor-dl')
|
|
74
74
|
.description('CLI torrent search tool - search, open in browser, copy magnet links' + mainHelp)
|
|
@@ -86,7 +86,7 @@ Sources:
|
|
|
86
86
|
.option('-o, --sort <sortBy>', 'Sort by (seeds|size|date)')
|
|
87
87
|
.option('--order <order>', 'Order (asc|desc)')
|
|
88
88
|
.option('-l, --limit <number>', 'Max results (default: 50)', parseInt)
|
|
89
|
-
.option('-S, --sources <sources>', 'Sources (yts,
|
|
89
|
+
.option('-S, --sources <sources>', 'Sources (yts,thepiratebay,nyaa)')
|
|
90
90
|
.option('-h, --help', 'Show help with examples')
|
|
91
91
|
.allowUnknownOption()
|
|
92
92
|
.hook('preAction', (thisCommand) => {
|
|
@@ -96,13 +96,12 @@ Sources:
|
|
|
96
96
|
console.log('Categories: all, movie, tv, anime, music, games, apps');
|
|
97
97
|
console.log('Sources:');
|
|
98
98
|
console.log(' yts - YTS (Movies)');
|
|
99
|
-
console.log(' eztv - EZTV (TV)');
|
|
100
99
|
console.log(' thepiratebay - The Pirate Bay');
|
|
101
100
|
console.log(' nyaa - Nyaa.si (Anime)');
|
|
102
101
|
console.log('');
|
|
103
102
|
console.log('Examples:');
|
|
104
103
|
console.log(' tor-dl search "movie" -c movie -s 100');
|
|
105
|
-
console.log(' tor-dl search "anime"
|
|
104
|
+
console.log(' tor-dl search "anime" -S nyaa --max-size 2GB');
|
|
106
105
|
console.log(' tor-dl search "linux" --min-size 500MB -l 10');
|
|
107
106
|
process.exit(0);
|
|
108
107
|
}
|
package/dist/cli/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/cli/parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,kCAcC;AAED,
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/cli/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/download/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/download/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAwBzC,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAG3D;AAED,wBAAgB,gBAAgB,IAAI,aAAa,EAAE,CAKlD"}
|
package/dist/download/engine.js
CHANGED
|
@@ -4,7 +4,8 @@ exports.cacheResults = cacheResults;
|
|
|
4
4
|
exports.getCachedResults = getCachedResults;
|
|
5
5
|
const fs_1 = require("fs");
|
|
6
6
|
const path_1 = require("path");
|
|
7
|
-
const
|
|
7
|
+
const os_1 = require("os");
|
|
8
|
+
const CACHE_FILE = (0, path_1.join)((0, os_1.tmpdir)(), 'tor-dl-cache.json');
|
|
8
9
|
function saveCache(results) {
|
|
9
10
|
try {
|
|
10
11
|
(0, fs_1.writeFileSync)(CACHE_FILE, JSON.stringify(results, null, 2));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/download/engine.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/download/engine.ts"],"names":[],"mappings":";;AAwBA,oCAGC;AAED,4CAKC;AAjCD,2BAA6D;AAC7D,+BAA4B;AAC5B,2BAA4B;AAE5B,MAAM,UAAU,GAAG,IAAA,WAAI,EAAC,IAAA,WAAM,GAAE,EAAE,mBAAmB,CAAC,CAAC;AAEvD,SAAS,SAAS,CAAC,OAAwB;IACzC,IAAI,CAAC;QACH,IAAA,kBAAa,EAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,SAAS;IAChB,IAAI,CAAC;QACH,IAAI,IAAA,eAAU,EAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;IAC5B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,IAAI,aAAa,GAAoB,EAAE,CAAC;AAExC,SAAgB,YAAY,CAAC,OAAwB;IACnD,aAAa,GAAG,OAAO,CAAC;IACxB,SAAS,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED,SAAgB,gBAAgB;IAC9B,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,aAAa,GAAG,SAAS,EAAE,CAAC;IAC9B,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"torrentscsv.d.ts","sourceRoot":"","sources":["../../src/sources/torrentscsv.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGxD,qBAAa,kBAAmB,YAAW,aAAa;IACtD,IAAI,
|
|
1
|
+
{"version":3,"file":"torrentscsv.d.ts","sourceRoot":"","sources":["../../src/sources/torrentscsv.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGxD,qBAAa,kBAAmB,YAAW,aAAa;IACtD,IAAI,SAAiB;IAEf,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAkClE,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAIrD,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,OAAO,CAAC,UAAU;CAMnB;;AAED,wBAAwC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"torrentscsv.js","sourceRoot":"","sources":["../../src/sources/torrentscsv.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,6CAAwD;AAExD,MAAa,kBAAkB;IAA/B;QACE,SAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"torrentscsv.js","sourceRoot":"","sources":["../../src/sources/torrentscsv.ts"],"names":[],"mappings":"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"}
|
package/filters.json
CHANGED
package/package.json
CHANGED
package/sources.json
CHANGED
package/src/cli/parser.ts
CHANGED
|
@@ -35,7 +35,7 @@ export function createParser(): Command {
|
|
|
35
35
|
const mainHelp = `
|
|
36
36
|
Categories: all, movie, tv, anime, music, games, apps
|
|
37
37
|
Sources:
|
|
38
|
-
yts - YTS (Movies) |
|
|
38
|
+
yts - YTS (Movies) | thepiratebay - The Pirate Bay | nyaa - Nyaa.si (Anime)`;
|
|
39
39
|
|
|
40
40
|
program
|
|
41
41
|
.name('tor-dl')
|
|
@@ -55,7 +55,7 @@ Sources:
|
|
|
55
55
|
.option('-o, --sort <sortBy>', 'Sort by (seeds|size|date)')
|
|
56
56
|
.option('--order <order>', 'Order (asc|desc)')
|
|
57
57
|
.option('-l, --limit <number>', 'Max results (default: 50)', parseInt)
|
|
58
|
-
.option('-S, --sources <sources>', 'Sources (yts,
|
|
58
|
+
.option('-S, --sources <sources>', 'Sources (yts,thepiratebay,nyaa)')
|
|
59
59
|
.option('-h, --help', 'Show help with examples')
|
|
60
60
|
.allowUnknownOption()
|
|
61
61
|
.hook('preAction', (thisCommand) => {
|
|
@@ -65,13 +65,12 @@ Sources:
|
|
|
65
65
|
console.log('Categories: all, movie, tv, anime, music, games, apps');
|
|
66
66
|
console.log('Sources:');
|
|
67
67
|
console.log(' yts - YTS (Movies)');
|
|
68
|
-
console.log(' eztv - EZTV (TV)');
|
|
69
68
|
console.log(' thepiratebay - The Pirate Bay');
|
|
70
69
|
console.log(' nyaa - Nyaa.si (Anime)');
|
|
71
70
|
console.log('');
|
|
72
71
|
console.log('Examples:');
|
|
73
72
|
console.log(' tor-dl search "movie" -c movie -s 100');
|
|
74
|
-
console.log(' tor-dl search "anime"
|
|
73
|
+
console.log(' tor-dl search "anime" -S nyaa --max-size 2GB');
|
|
75
74
|
console.log(' tor-dl search "linux" --min-size 500MB -l 10');
|
|
76
75
|
process.exit(0);
|
|
77
76
|
}
|
package/src/download/engine.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { TorrentResult } from '../types';
|
|
2
2
|
import { writeFileSync, readFileSync, existsSync } from 'fs';
|
|
3
3
|
import { join } from 'path';
|
|
4
|
+
import { tmpdir } from 'os';
|
|
4
5
|
|
|
5
|
-
const CACHE_FILE = join(
|
|
6
|
+
const CACHE_FILE = join(tmpdir(), 'tor-dl-cache.json');
|
|
6
7
|
|
|
7
8
|
function saveCache(results: TorrentResult[]): void {
|
|
8
9
|
try {
|
|
@@ -3,7 +3,7 @@ import { TorrentResult, SourceScraper } from '../types';
|
|
|
3
3
|
import { DEFAULT_HEADERS, TIMEOUT } from './httpClient';
|
|
4
4
|
|
|
5
5
|
export class TorrentsCsvScraper implements SourceScraper {
|
|
6
|
-
name = '
|
|
6
|
+
name = 'torrentscsv';
|
|
7
7
|
|
|
8
8
|
async search(query: string, category?: string): Promise<TorrentResult[]> {
|
|
9
9
|
try {
|
package/help.txt
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
Usage: tor-dl search [options] <query>
|
|
2
|
-
|
|
3
|
-
Search for torrents across multiple sources
|
|
4
|
-
|
|
5
|
-
Options:
|
|
6
|
-
-c, --cat <category> Category: all, movie, tv, anime, music, games, apps
|
|
7
|
-
-s, --min-seeds <number> Minimum seeders (e.g., 100)
|
|
8
|
-
--max-seeds <number> Maximum seeders (e.g., 1000)
|
|
9
|
-
--min-size <size> Minimum size (e.g., 500MB, 1GB, 2GB)
|
|
10
|
-
--max-size <size> Maximum size (e.g., 5GB, 10GB)
|
|
11
|
-
-o, --sort <sortBy> Sort by: seeds, size, date
|
|
12
|
-
--order <order> Sort order: asc (low to high), desc (high to low)
|
|
13
|
-
-l, --limit <number> Maximum results to return (default: 50)
|
|
14
|
-
--sources <sources> Sources: yts, eztv, thepiratebay, nyaa
|
|
15
|
-
(comma-separated)
|
|
16
|
-
-h, --help display help for command
|
|
17
|
-
|
|
18
|
-
Available Categories:
|
|
19
|
-
all, movie, tv, anime, music, games, apps
|
|
20
|
-
|
|
21
|
-
Available Sources:
|
|
22
|
-
yts - YTS (Movies only)
|
|
23
|
-
eztv - EZTV (TV shows)
|
|
24
|
-
thepiratebay - The Pirate Bay (All categories)
|
|
25
|
-
nyaa - Nyaa.si (Anime, Japanese media)
|
|
26
|
-
|
|
27
|
-
Examples:
|
|
28
|
-
tor-dl search "movie" --cat movie --min-seeds 100
|
|
29
|
-
tor-dl search "anime" --sources nyaa --max-size 2GB
|
|
30
|
-
tor-dl search "linux" --min-size 500MB --max-size 2GB -l 10
|
package/output.txt
DELETED
|
Binary file
|