-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
girotorrent.yml
255 lines (247 loc) · 8.8 KB
/
girotorrent.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
---
id: girotorrent
name: Girotorrent
description: "Girotorrent is an ITALIAN Private site for TV / MOVIES / GENERAL"
language: it-IT
type: private
encoding: UTF-8
testlinktorrent: false
links:
- https://girotorrent.org/
legacylinks:
- http://girotorrent.org/ # site forces https
caps:
categorymappings:
# LIBREDICOLA
- {id: 13, cat: Books/Mags, desc: "Giornali e Riviste"}
- {id: 15, cat: Books/EBook, desc: "E-Book"}
- {id: 16, cat: Books/Comics, desc: "Fumetti"}
- {id: 70, cat: Books, desc: "Manuali e Guide"}
- {id: 72, cat: Audio/Audiobook, desc: "Audio Libri"}
# CINEMA
- {id: 17, cat: Movies/Other, desc: "Movie Cam-Ts"}
- {id: 18, cat: Movies/Other, desc: "Movie Screener"}
- {id: 61, cat: Movies/Other, desc: "Movie R5-R6"}
- {id: 19, cat: Movies/Other, desc: "Movie DVDRip"}
- {id: 20, cat: Movies/Other, desc: "Movie BDRip"}
- {id: 60, cat: Movies/Other, desc: "Movie BluRay"}
- {id: 63, cat: Movies/Other, desc: "Movie WEBDLRip"}
# VIDEOTECA
- {id: 22, cat: Movies/SD, desc: "Movie BDRip"}
- {id: 23, cat: Movies/SD, desc: "Movie DvdRip"}
- {id: 95, cat: Movies/SD, desc: "Movie WEBRip"}
- {id: 98, cat: Movies/WEB-DL, desc: "Movie WEBDL"}
- {id: 24, cat: Movies/DVD, desc: "Movie DVD-R 5"}
- {id: 25, cat: Movies/DVD, desc: "Movie DVD-R 9"}
- {id: 26, cat: Movies/HD, desc: "Movie Blu-Ray HD"}
- {id: 27, cat: Movies/UHD, desc: "Movie 4K Ultra HD"}
- {id: 96, cat: Movies/HD, desc: "Movie HD Hevc"}
- {id: 28, cat: Movies/Foreign, desc: "Movie Subbed-ita"}
- {id: 73, cat: Movies/SD, desc: "Movie MP4"}
- {id: 29, cat: Movies/Foreign, desc: "Movie Lingua Originale"}
# ANIMAZIONE
- {id: 32, cat: TV/Anime, desc: "Anime Disney"}
- {id: 33, cat: TV/Anime, desc: "Anime"}
- {id: 34, cat: TV/Anime, desc: "Anime Altri Cartoni"}
- {id: 62, cat: TV/Anime, desc: "Anime Natale Bimbi Girotor"}
# TELEVISIONE
- {id: 36, cat: TV, desc: "TV Serie"}
- {id: 99, cat: TV/HD, desc: "TV Serie Hevc"}
- {id: 37, cat: TV, desc: "TV Film"}
- {id: 59, cat: TV/Sport, desc: "TV Sport"}
- {id: 77, cat: TV, desc: "TV Reality"}
- {id: 38, cat: TV, desc: "TV Concerti-Spettacoli"}
- {id: 39, cat: TV, desc: "TV Teatro-Cabaret"}
- {id: 40, cat: TV/Documentary, desc: "Tv Documentario"}
# MUSICA
- {id: 42, cat: Audio, desc: "Musica CD Singoli"}
- {id: 43, cat: Audio, desc: "Musica Italiana"}
- {id: 44, cat: Audio, desc: "Musica Straniera"}
- {id: 45, cat: Audio, desc: "Musica Compilation"}
- {id: 46, cat: Audio/Video, desc: "Musica Video Clip"}
- {id: 58, cat: Audio, desc: "Musica Discografie"}
- {id: 97, cat: Audio/Lossless, desc: "Musica Flac"}
# SALA GIOCHI
- {id: 47, cat: PC/Games, desc: "Giochi PC"}
- {id: 48, cat: Console/PS3, desc: "Giochi PS2-PS3"}
- {id: 49, cat: Console/Wii, desc: "Giochi Nintendo Wii"}
- {id: 50, cat: Console/XBox, desc: "Giochi Xbox"}
- {id: 51, cat: Console/PSP, desc: "Giochi PSP"}
- {id: 52, cat: Console/3DS, desc: "Giochi Nintendo DS-DS3"}
# SOFTWARE
- {id: 54, cat: PC, desc: "Programmi Windows"}
- {id: 55, cat: PC/Mac, desc: "Programmi Mac"}
- {id: 69, cat: PC, desc: "Programmi Portable"}
- {id: 56, cat: PC, desc: "Programmi Linux"}
# CELLULARI-PALMARI
- {id: 68, cat: PC/Mobile-iOS, desc: "IPhone-IPad"}
- {id: 71, cat: PC/Mobile-Android, desc: "Android"}
- {id: 74, cat: Other, desc: "Varie"}
- {id: 75, cat: Other, desc: "Immagini Wallpaper"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Filter freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 3
options:
3: created
5: seeders
4: size
2: title
- name: type
type: select
label: Order requested from site
default: 2
options:
2: desc
1: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile. The default is <i>15</i>.
login:
path: index.php?page=login
method: post
inputs:
uid: "{{ .Config.username }}"
pwd: "{{ .Config.password }}"
error:
- selector: div.error
- selector: span[style="color:#FF0000;"]
test:
path: index.php
selector: a[href="logout.php"]
download:
before:
path: thanks.php
method: post
inputs:
infohash: "{{ .DownloadUri.Query.id }}"
thanks: 1
rndval: "1487013827343"
selectors:
- selector: a[href^="download.php?id="]
attribute: href
filters:
- name: regexp
args: "^(.+?)&key="
search:
paths:
# 15 results per page fetch 5 (site is slow, dont be greedy and fetch more)
- path: index.php
inputs:
page: torrents
search: "{{ .Keywords }}"
category: "{{ range .Categories }}{{.}};{{end}}"
# 0 name, 1 name&descr, 2 descr, 3 uploader, 5 gold, 6 silver, 7 bronze
# note the options are exclusive, so searching for gold means the search keywords are ignored
options: 0
# 0 all, 1 activeonly, 2 deadonly
active: 0
order: "{{ .Config.sort }}"
by: "{{ .Config.type }}"
keywordsfilters:
- name: diacritics
args: replace
- name: re_replace # S01 to 1
args: ["(?i)\\bS0*(\\d+)\\b", "$1"]
- name: re_replace # S01E01 to 1 1
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "$1 $2"]
# does not support imdbid search and does not return imdb link in results
rows:
selector: "div.b-content > table > tbody > tr > td > table.lista > tbody > tr:has(a[href^=\"index.php?page=torrent-details&id=\"]){{ if .Config.freeleech }}:has(img[alt=\"Gold 100% Free\"]){{ else }}{{ end }}, div.b-content > table > tbody > tr > td > table.lista > tbody > tr:has(a[href^=\"index.php?page=torrent-details&id=\"]){{ if .Config.freeleech }}:has(img[alt=\"Free Leech\"]){{ else }}{{ end }}"
filters:
- name: andmatch
fields:
category:
selector: a[href^="index.php?page=torrents&category="]
attribute: href
filters:
- name: querystring
args: category
title:
selector: a[onmouseover][href^="index.php?page=torrent-details&id="]
filters:
- name: re_replace # replace special characters with " " (space)
args: ["[\\[!\"#$%&'()*+,\\-.\\/:;<=>?@[\\]^_`{|}~]", " "]
- name: diacritics
args: replace
- name: re_replace # replace multiple spaces
args: ["[ ]{2,}", " "]
# normalize to SXXEYY format
- name: re_replace # S01 E01 to S01E01
args: ["(?i)\\bS(\\d+)\\sE(\\d+)\\b", "S$1E$2"]
- name: re_replace # 01x01 to S01E01
args: ["(?i)(\\d{2})x(\\d+)", "S$1E$2"]
- name: re_replace # 1x01 to S01E01
args: ["(?i)\\b(\\d{1})x(\\d+)", "S0$1E$2"]
- name: re_replace # Stagione X --> S0X
args: ["(?i)\\bStagion[ei]\\s?(\\d{1})\\b|\\bSeason'?s?\\s?(\\d{1})\\b", "S0$1$2"]
- name: re_replace # Stagione XX --> SXX
args: ["(?i)\\bStagion[ei]\\s?(\\d{2,})\\b|\\bSeason'?s?\\s?(\\d{2,})\\b", "S$1$2"]
- name: re_replace # Episodio 4 to E4
args: ["(?i)\\b(?:[\\/\\|]?Episodio\\s?(\\d+)|Puntata\\s?(\\d+))", "E$1$2"]
- name: re_replace # Episodi 4 5 to E04-05
args: ["(?i)\\b(?:Puntate\\s*)(\\d+)\\s?(\\d+)", "E0$1-0$2"]
- name: re_replace # rimozioni varie
args: ["(?i)(Serie completa|Completat?a?|in pausa)", ""]
details:
selector: a[onmouseover][href^="index.php?page=torrent-details&id="]
attribute: href
download:
selector: a[href^="index.php?page=downloadcheck"]
attribute: href
poster:
selector: a[onmouseover][href^="index.php?page=torrent-details&id="]
attribute: onmouseover
filters:
- name: regexp
args: "src=(.+?) "
date:
selector: td:nth-last-child(9)
# auto adjusted by site account profile
filters:
- name: dateparse
args: "dd/MM/yyyy"
seeders:
selector: td:nth-last-child(8)
leechers:
selector: td:nth-last-child(7)
grabs:
selector: td:nth-last-child(6)
size:
selector: td:nth-last-child(4)
downloadvolumefactor:
case:
img[alt="Free Leech"]: 0
img[alt="Gold 100% Free"]: 0
img[alt="Silver 50% Free"]: 0.5
img[alt="Bronze 25% Free"]: 0.75
"*": 1
uploadvolumefactor:
selector: img[alt$="x Upload Multiplier"]
attribute: alt
optional: true
default: 1
filters:
- name: replace
args: ["x Upload Multiplier", ""]
minimumratio:
text: 0.5
# xbtitFM 3.1.00