1
0
mirror of https://github.com/Prowlarr/Indexers.git synced 2026-02-15 07:25:47 +00:00
Files
Indexers/definitions/v11/funkytorrents.yml
ServarrAdmin 03d43b4b70 Fixed: deprecate v10 schema version and migrate indexers to v11
- Migrated 485+ indexer definitions from v10 to v11 directory
- Preserved existing v11 indexers (skipped 15 duplicates to keep v11 versions)
- Updated VERSIONS file: MIN_VERSION changed from 10 to 11
- Updated documentation in README.md and CONTRIBUTING.md:
  * Marked v10 as deprecated (removed from active versions)
  * Updated v11 as single active version with 522+ indexers
  * Added deprecation warnings and migration notes
- Kept v10/schema.json for historical reference
- All validation passes with migrated indexers

Breaking change: v10 no longer contains active indexer definitions.
Prowlarr will continue to work as it falls back to available versions.
2025-08-24 07:38:43 -05:00

153 lines
4.8 KiB
YAML

---
id: funkytorrents
name: FunkyTorrents
description: "FunkyTorrents (FT) is a Private Torrent Tracker for MUSIC"
language: en-US
type: private
encoding: UTF-8
links:
- https://funkytorrents.com/
legacylinks:
- http://funkytorrents.com/
caps:
categorymappings:
- {id: 1, cat: PC/0day, desc: "Apps"}
- {id: 2, cat: Books/EBook, desc: "eBooks"}
- {id: 3, cat: Movies, desc: "Movie"}
- {id: 33, cat: Audio/Video, desc: "Music DVDs"}
- {id: 5, cat: Audio/Video, desc: "Music Vids"}
- {id: 4, cat: Audio, desc: "OST"}
- {id: 19, cat: Audio, desc: "Music Alternative"}
- {id: 28, cat: Audio, desc: "Music Ambient"}
- {id: 12, cat: Audio, desc: "Music Classical"}
- {id: 17, cat: Audio, desc: "Music Dance"}
- {id: 16, cat: Audio, desc: "Music Drum 'n' Bass"}
- {id: 20, cat: Audio, desc: "Music Electronic"}
- {id: 14, cat: Audio, desc: "Music Emo"}
- {id: 23, cat: Audio, desc: "Music Experimental"}
- {id: 34, cat: Audio, desc: "Music Funk"}
- {id: 18, cat: Audio, desc: "Music Hardcore"}
- {id: 13, cat: Audio, desc: "Music House"}
- {id: 31, cat: Audio, desc: "Music IDM"}
- {id: 21, cat: Audio, desc: "Music Indie"}
- {id: 26, cat: Audio, desc: "Music Industrial"}
- {id: 25, cat: Audio, desc: "Music Jazz/Blues/Soul"}
- {id: 37, cat: Audio, desc: "Music Lo-Fi"}
- {id: 6, cat: Audio, desc: "Music Metal"}
- {id: 22, cat: Audio, desc: "Music Misc"}
- {id: 7, cat: Audio, desc: "Music Pop/RnB"}
- {id: 29, cat: Audio, desc: "Music Post-Rock"}
- {id: 30, cat: Audio, desc: "Music Psychedelic"}
- {id: 8, cat: Audio, desc: "Music Punk"}
- {id: 9, cat: Audio, desc: "Music Rap/Hip-Hop"}
- {id: 35, cat: Audio, desc: "Music Reggae"}
- {id: 10, cat: Audio, desc: "Music Rock"}
- {id: 15, cat: Audio, desc: "Music Ska"}
- {id: 32, cat: Audio, desc: "Music Techno"}
- {id: 11, cat: Audio, desc: "Music Trance"}
- {id: 36, cat: Audio, desc: "Music Trip-Hop"}
- {id: 24, cat: Audio, desc: "Music World/Ethnic"}
- {id: 3010, cat: Audio/MP3, desc: "Music MP3"}
- {id: 3040, cat: Audio/Lossless, desc: "Music Lossless"}
modes:
search: [q]
movie-search: [q]
music-search: [q, artist]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: info_activity
type: info
label: Account Inactivity
default: "Inactive users will be removed in 180 days, users that haven't downloaded/uploaded anything will be removed in 90 days after registration. You can park your account in your Profile to prevent it from being deleted because of inactivity if you go away on for example a vacation. When the account has been parked limits are put on the account, for example you cannot use the tracker and browse some of the pages."
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: td.embedded:has(h2:contains("failed"))
test:
path: /
selector: a[href="logout.php"]
search:
paths:
- path: browse.php
inputs:
# cat search doesn't work if our custom MP3 and Lossless cats are selected
# $raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
cat: 0
search: "{{ if .Query.Artist }}{{ .Query.Artist }}{{ else }}{{ .Keywords }}{{ end }}"
# 0 active, 1 incldead, 2 dead
incldead: 1
# 0 all, 1 not documented, 2 free
free: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
rows:
selector: table.mainouter > tbody > tr > td.outer > table > tbody > tr.mouse_out
fields:
description:
selector: td:nth-child(2) > font
title:
selector: td:nth-child(2)
remove: font
details:
selector: a[href^="details.php?id="]
attribute: href
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
category|append:
optional: true
case:
a[href="/browse.php?ext=1&bitrate=Lossless"]: 3040
a[href="/browse.php?ext=1&format=MP3"]: 3010
download:
selector: a[href^="download.php"]
attribute: href
files:
selector: td:nth-child(5)
date:
selector: td:nth-child(7)
filters:
- name: append
args: " +00:00" # GMT
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
size:
selector: td:nth-child(8)
grabs:
selector: td:nth-child(9)
seeders:
selector: td:nth-child(10)
leechers:
selector: td:nth-child(11)
downloadvolumefactor:
case:
img[alt="Free Leech"]: 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 0.6
# engine tbd