---
id: finvip
name: FinVip
description: "FinVip is a FINNISH Private Torrent Tracker for MOVIES / TV / GENERAL"
language: fi-FI
type: private
encoding: UTF-8
testlinktorrent: false
links:
  - https://finvip.org/

caps:
  categorymappings:
    - {id: 5, cat: TV/Anime, desc: "Anime"}
    - {id: 25, cat: TV/Documentary, desc: "Dokumentit (docs)"}
    - {id: 6, cat: Books/EBook, desc: "e-Kirjat (ebooks)"}
    - {id: 49, cat: Audio/Audiobook, desc: "Äänikirjat (audiobook)"}
    - {id: 20, cat: TV/SD, desc: "Lasten DVD (kids)"}
    - {id: 33, cat: TV/SD, desc: "Lasten SD (kids)"}
    - {id: 50, cat: TV/HD, desc: "Lasten HD (kids)"}
    - {id: 51, cat: TV/UHD, desc: "Lasten 4K (kids)"}
    - {id: 11, cat: Movies/DVD, desc: "Leffat DVD (movies)"}
    - {id: 13, cat: Movies/SD, desc: "Leffat SD (movies)"}
    - {id: 21, cat: Movies/HD, desc: "Leffat HD (movies)"}
    - {id: 48, cat: Movies/UHD, desc: "Leffat 4K (movies)"}
    - {id: 15, cat: Audio/MP3, desc: "Musiikki (music)"}
    - {id: 53, cat: Audio/Lossless, desc: "Musiikki Flac (music)"}
    - {id: 12, cat: Audio/Video, desc: "Musavideot (clips)"}
    - {id: 7, cat: PC/0day, desc: "Ohjelmat (apps)"}
    - {id: 17, cat: PC/Games, desc: "Pelit PC (games)"}
    - {id: 18, cat: Console, desc: "Pelit Konsoli (console)"}
    - {id: 23, cat: XXX/SD, desc: "Porn SD"}
    - {id: 36, cat: XXX/Other, desc: "Porn Muut"}
    - {id: 47, cat: XXX/x264, desc: "Porn HD"}
    - {id: 54, cat: XXX/UHD, desc: "Porn 4K"}
    - {id: 1, cat: TV/SD, desc: "Sarjat Boxset (series)"}
    - {id: 30, cat: TV/SD, desc: "Sarjat SD (series)"}
    - {id: 41, cat: TV/HD, desc: "Sarjat HD (series)"}
    - {id: 52, cat: TV/UHD, desc: "Sarjat 4K (series)"}
    - {id: 40, cat: TV/Sport, desc: "Urheilu (sport)"}
    - {id: 31, cat: Other, desc: "Muut (other)"}
    - {id: 43, cat: TV, desc: "Salkkarit (drama)"}

  modes:
    search: [q]
    tv-search: [q, season, ep, imdbid]
    movie-search: [q, imdbid]
    music-search: [q]
    book-search: [q]

settings:
  - name: username
    type: text
    label: Username
  - name: password
    type: password
    label: Password
  - name: info_results
    type: info
    label: "Search results"
    default: "<ol><li>Only the Xbtit style is supported.</li><ul>Make sure to set the <b>Style</b> option in your profile to <b>Xbtit</b>.</ul><li>For best results, increase the torrents number in your profile to 100.</li><ul>Set the <b>Torrents Per Page</b> option to <b>100</b>.</ul></ol>"
  - name: freeleech
    type: checkbox
    label: Search 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_activity
    type: info
    label: Account Inactivity
    default: "If you do not log into your account once for three months, i.e. your username is considered 'dead', it will be automatically deleted from the system."

login:
  path: index.php?page=login
  method: post
  inputs:
    uid: "{{ .Config.username }}"
    pwd: "{{ .Config.password }}"
    logout: no
  error:
    - selector: tr td span[style="color:#FF0000;"]
  test:
    path: index.php
    selector: a[href="logout.php"]

download:
  selectors:
    - selector: a[href^="download.php?id="]
      attribute: href

search:
  paths:
    # https://finvip.org/index.php?page=torrents&active=0&gold=0&category=5;25;6&order=3&by=2
    - path: index.php
  inputs:
    page: torrents
    search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
    category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}"
    # 0 title 1 title&descr 2 descr
    options: "{{ if .Query.IMDBID }}1{{ else }}0{{ end }}"
    # 0 all, 1 activeonly, 2 deadonly
    active: 0
    # 0 all, 1 classic, 2 50%free, 3 100%free, 4 50%+100&free
    gold: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
    order: "{{ .Config.sort }}"
    by: "{{ .Config.type }}"

  rows:
    selector: table.lista tr td table.lista tr:has(a[href^="index.php?page=torrent-details"])

  fields:
    category:
      selector: td a[href^="index.php?page=torrents&category="]
      attribute: href
      filters:
        - name: querystring
          args: category
    title:
      selector: td a[href^="index.php?page=torrent-details"]
    details:
      selector: td a[href^="index.php?page=torrent-details"]
      attribute: href
    download:
      selector: td a[href^="index.php?page=downloadcheck"]
      attribute: href
    imdbid:
      # javascript:popdetails('http://www.imdb.com/title/tt10209130');
      selector: a[href*="imdb.com/title/tt"]
      attribute: href
    size:
      selector: td:nth-last-child(1)
    leechers:
      selector: td:nth-last-child(2)
    seeders:
      selector: td:nth-last-child(3)
    date:
      # 23/12/2019 07:57
      selector: td:nth-last-child(4)
      # auto adjusted by site account profile
      filters:
        - name: dateparse
          args: "dd/MM/yyyy HH:mm"
    genre:
      selector: td:nth-child(2)
      remove: a
    description:
      text: "{{ .Result.genre }}"
    downloadvolumefactor:
      case:
        img[src="images/silver.gif"]: 0.5
        img[src="images/gold.gif"]: 0
        img[src="images/freeleech.gif"]: 0
        "*": 1
    uploadvolumefactor:
      text: 1
    minimumratio:
      text: 1.0
    minimumseedtime:
      # 3 days (as seconds = 3 x 24 x 60 x 60)
      text: 259200
# xbtit 2.0.0
