--- id: 52pt name: 52PT description: "52PT is a CHINESE Private Torrent Tracker for HD MOVIES / TV" language: zh-CN type: private encoding: UTF-8 links: - https://52pt.site/ caps: categorymappings: - {id: 401, cat: Movies, desc: "Movies/电影"} - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - {id: 402, cat: TV, desc: "TV Series/剧集"} - {id: 403, cat: TV, desc: "TV Shows/综艺"} - {id: 406, cat: Audio/Video, desc: "MusicVideo/音乐MV"} - {id: 407, cat: TV/Sport, desc: "Sports/运体"} - {id: 409, cat: Other, desc: "Misc/其他"} - {id: 410, cat: Other, desc: "Opera/戏曲 曲艺"} - {id: 408, cat: Audio, desc: "HQ Audio/无损音乐"} - {id: 411, cat: XXX, desc: "Erotic/情色"} modes: search: [q] tv-search: [q, season, ep, imdbid, doubanid] movie-search: [q, imdbid, doubanid] music-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: sort type: select label: Sort requested from site default: 4 options: 4: created 7: seeders 5: size 1: title - name: type type: select label: Order requested from site default: desc options: desc: desc asc: asc - name: info_tpp type: info label: Results Per Page default: For best results, change the Torrents per page: setting to 100 on your account profile. - name: info_activity type: info label: Account Inactivity default: "Account retention rules:
  1. Veteran User (junior college) and above will be retained forever
  2. Elite User (junior high school) and above will not be deleted after parking (in the control panel)
  3. Users with a parked account who do not log in for 400 consecutive days will be deleted
  4. Users with non-parked account will be deleted if they do not log in for 150 consecutive days
  5. Users with no traffic (that is, upload/download data are both 0) will be deleted if they do not log in for 15 consecutive days, or if the registration time reaches 60 days.
" login: path: login.php method: form form: form[action="takelogin.php"] captcha: type: image selector: img[alt="CAPTCHA"] input: imagestring inputs: secret: "" username: "{{ .Config.username }}" password: "{{ .Config.password }}" logout: "" securelogin: "" ssl: yes trackerssl: yes error: - selector: td.embedded:has(h2:contains("失败")) test: path: index.php selector: a[href="usercp.php"] search: paths: - path: torrents.php inputs: $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" # currently supports only one query id at one time. search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}" # 0 incldead, 1 active, 2 dead incldead: 0 # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" # 0 title, 1 descr, 3 uploader, 4 imdburl search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" # 0 AND, 1 OR, 2 exact search_mode: 0 sort: "{{ .Config.sort }}" type: "{{ .Config.type }}" notnewword: 1 # does not return imdb or doubanid in results rows: selector: table.torrents > tbody > tr:has(table.torrentname) fields: category: selector: a[href^="?cat="] attribute: href filters: - name: querystring args: cat title_default: selector: a[href^="details.php?id="] title: selector: a[title][href^="details.php?id="] attribute: title optional: true default: "{{ .Result.title_default }}" details: selector: a[href^="details.php?id="] attribute: href download: selector: a[href^="download.php?id="] attribute: href date_elapsed: # time type: time elapsed (default) selector: td:nth-child(4) > span[title] attribute: title optional: true filters: - name: append args: " +08:00" # CST - name: dateparse args: "yyyy-MM-dd HH:mm:ss zzz" date_added: # time added selector: td:nth-child(4):not(:has(span)) optional: true filters: - name: append args: " +08:00" # CST - name: dateparse args: "yyyy-MM-ddHH:mm:ss zzz" date: text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" size: selector: td:nth-child(5) seeders: selector: td:nth-child(6) leechers: selector: td:nth-child(7) grabs: selector: td:nth-child(8) downloadvolumefactor: case: img.pro_free: 0 img.pro_free2up: 0 img.pro_50pctdown: 0.5 img.pro_50pctdown2up: 0.5 img.pro_30pctdown: 0.3 "*": 1 uploadvolumefactor: case: img.pro_50pctdown2up: 2 img.pro_free2up: 2 img.pro_2up: 2 "*": 1 minimumratio: text: 1 minimumseedtime: # 1 day (as seconds = 24 x 60 x 60) text: 86400 description: selector: td:nth-child(2) remove: a, b, font, img, span # NexusPHP Standard v1.5 Beta 4