---
id: firebit
name: FireBit
description: "FireBit is an UKRAINIAN / RUSSIAN Public Torrent Tracker for MOVIES / TV / GENERAL"
language: ru-RU
type: public
encoding: UTF-8
requestDelay: 2
links:
  - https://firebit.net/
legacylinks:
  - https://firebit.name/
  - https://firebit.biz/
  - http://firebit.net/
  - http://firebit.info/
  - http://firebit.name/
  - http://firebit.pro/
  - http://firebit.club/
  - http://firebit.biz/
  - https://firebit.pro/
  - https://firebit.club/
  - https://firebit.info/

caps:
  categorymappings:
    - {id: "Мультфильмы", cat: TV/Anime, desc: "Мультфильмы"}
    - {id: "Программы", cat: PC, desc: "Программы"}
    - {id: "Программы Видео", cat: PC, desc: "Программы Видео"}
    - {id: "Программы FAQ", cat: PC, desc: "Программы FAQ"}
    - {id: "Программы Web Оформление", cat: PC, desc: "Программы Web Оформление"}
    - {id: "Linux", cat: PC, desc: "Linux"}
    - {id: "Мобилка", cat: PC/Mobile-Other, desc: "Мобилка"}
    - {id: "Мобилка Игры", cat: PC/Mobile-Other, desc: "Мобилка Игры"}
    - {id: "Литература", cat: Books, desc: "Литература"}
    - {id: "Игры", cat: PC/Games, desc: "Игры"}
    - {id: "Игры Мобилка", cat: PC/Games, desc: "Игры Мобилка"}
    - {id: "Фильмы", cat: Movies, desc: "Фильмы"}
    - {id: "Фильмы Видео", cat: Movies, desc: "Фильмы Видео"}
    - {id: "Фильмы Сериалы", cat: Movies, desc: "Фильмы Сериалы"}
    - {id: "Фильмы Скоро на трекере", cat: Movies, desc: "Фильмы Скоро на трекере"}
    - {id: "Видео", cat: Movies, desc: "Видео"}
    - {id: "Музыка", cat: Audio, desc: "Музыка"}
    - {id: "Музыка Фильмы", cat: Audio, desc: "Музыка Фильмы"}
    - {id: "Видео Музыка", cat: Audio/Video, desc: "Видео Музыка"}
    - {id: "Фильмы Музыка Видео", cat: Audio/Video, desc: "Фильмы Музыка Видео"}
    - {id: "Музыка Видео", cat: Audio/Video, desc: "Музыка Видео"}
    - {id: "Другие категории", cat: Other, desc: "Другие категории"}
    - {id: "Сериалы", cat: TV, desc: "Сериалы"}
    - {id: "18+", cat: TV, desc: "18+"}
    - {id: "-", cat: Other, desc: "Другие категории"}

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

settings:
  - name: stripcyrillic
    type: checkbox
    label: Strip Cyrillic Letters
    default: false
  - name: addrussiantotitle
    type: checkbox
    label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
    default: false

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

search:
  # http://firebit.net/index.php?do=search&type=simple&q=2022
  paths:
    - path: "{{ if .Keywords }}index.php?do=search&type=simple&q={{ .Keywords }}{{ else }}{{ end }}"
    - path: "{{ if .Keywords }}index.php?do=search&type=simple&q={{ .Keywords }}&cstart=2{{ else }}%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0/2/{{ end }}"

  keywordsfilters:
    # strip season and/or ep
    - name: re_replace
      args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]

  rows:
    selector: "{{ if .Keywords }}table.torrents tbody tr:has(td.td-size){{ else }}div[id^=\"post-id-\"]:has(li.meta-size){{ end }}"
    filters:
      - name: andmatch

  fields:
    category:
      selector: td:nth-child(1), div.article-indent div b
      optional: true
      default: "-"
      filters:
        - name: replace
          args: ["Новинки", ""]
        - name: re_replace
          args: [",", ""]
        - name: trim
    title:
      selector: td:nth-child(2), span.article-title
      filters:
        # normalize to SXXEYY format
        - name: re_replace
          args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езон[ыи]?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))?", "S$1E$2 of $3"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езон[ыи]?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
        - name: re_replace
          args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))?", "S$1E$2 of $3"]
        - name: re_replace
          args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
        - name: re_replace
          args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)", "S$1E$2"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езон[ыи]?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "S$1E$2"]
        - name: re_replace
          args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "S$1E$2"]
        - name: re_replace
          args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?)", "S$1"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езон[ыи]?", "S$1"]
        - name: re_replace
          args: ["(?i)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "E$1 of $2"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))\\s+из\\s*(\\w?)", "E$1 of $2"]
        - name: re_replace
          args: ["(?i)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)", "E$1"]
        - name: re_replace
          args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "E$1"]
        - name: re_replace
          args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
        - name: re_replace
          args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
        - name: re_replace
          args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
        - name: re_replace
          args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
        - name: re_replace
          args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
        - name: re_replace
          args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
        - name: re_replace
          args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
        - name: re_replace
          args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
#        - name: re_replace
#          args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"]
        - name: append
          args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
    details:
      selector: td:nth-child(2) a, span.article-title a
      attribute: href
    download:
      selector: td:nth-child(2) a, span.article-title a
      attribute: href
    size:
      selector: td.td-size, li.meta-size
      filters:
        - name: replace
          args: ["-", "0 B"]
    date_day:
      # Вчера, 08:01:41
      # 2 дня назад, 19:33:51
      selector: td:nth-child(5):contains(","), li.meta-date:contains(",")
      optional: true
      filters:
        - name: replace
          args: ["Вчера,", "Yesterday"]
        - name: replace
          args: ["дня назад,", "days"]
        - name: fuzzytime
    date_year:
      # 16.08.2021 20:29:39
      selector: td:nth-child(5):not(:contains(",")), li.meta-date:not(:contains(","))
      optional: true
      filters:
        - name: append
          args: " +03:00" # MSK
        - name: dateparse
          args: "dd.MM.yyyy HH:mm:ss zzz"
    date:
      text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
    seeders:
      selector: td.l1, li.meta-sead
    leechers:
      selector: td.l2, li.meta-leech
    downloadvolumefactor:
      text: 0
    uploadvolumefactor:
      text: 1
    description:
      selector: td:nth-child(2), span.article-title
# engine n/a
