From 3dc9b6c5328f15f5f8d92e9afb725f415d8c4865 Mon Sep 17 00:00:00 2001 From: Garfield69 Date: Sat, 4 Feb 2023 11:42:12 +1300 Subject: [PATCH] add hdmayi a Chinese private site. resolves #13900 --- README.md | 1 + src/Jackett.Common/Definitions/hdmayi.yml | 174 ++++++++++++++++++++++ 2 files changed, 175 insertions(+) create mode 100644 src/Jackett.Common/Definitions/hdmayi.yml diff --git a/README.md b/README.md index 3b06cdb63..521936912 100644 --- a/README.md +++ b/README.md @@ -379,6 +379,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht * HDCity [![(invite needed)][inviteneeded]](#) * HDFans * HDHome (HDBigger) [![(invite needed)][inviteneeded]](#) + * HDMaYi * HDMonkey * HDRoute [![(invite needed)][inviteneeded]](#) * HDSky [![(invite needed)][inviteneeded]](#) diff --git a/src/Jackett.Common/Definitions/hdmayi.yml b/src/Jackett.Common/Definitions/hdmayi.yml new file mode 100644 index 000000000..d402a9941 --- /dev/null +++ b/src/Jackett.Common/Definitions/hdmayi.yml @@ -0,0 +1,174 @@ +--- +id: hdmayi +name: HDMaYi +description: "HDMaYi (小蚂蚁PT站) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL" +language: zh-CN +type: private +encoding: UTF-8 +links: + - http://hdmayi.com/ # does not support https properly + +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: 408, cat: Audio, desc: "Music/音乐"} + + modes: + search: [q] + tv-search: [q, season, ep, imdbid, doubanid] + movie-search: [q, imdbid, doubanid] + music-search: [q] + +settings: +settings: + - name: cookie + type: text + label: Cookie + - name: info + type: info + label: How to get the Cookie + default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" + - 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. + +login: + method: cookie + inputs: + cookie: "{{ .Config.cookie }}" + test: + path: index.php + selector: a[href="logout.php"] + +search: + paths: + - path: torrents.php + inputs: + $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" + 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 (4 does not appear to work) + search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}" + # 0 AND, 1 OR, 2 exact + search_mode: 0 + sort: "{{ .Config.sort }}" + type: "{{ .Config.type }}" + + rows: + selector: table.torrents > tbody > tr:has(a[href^="details.php?id="]) + + fields: + category: + selector: a[href^="?cat="] + attribute: href + filters: + - name: querystring + args: cat + title_default: + selector: a[href^="details.php?id="] + title_optional: + optional: true + selector: a[title][href^="details.php?id="] + attribute: title + title: + text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}" + details: + selector: a[href^="details.php?id="] + attribute: href + download: + selector: a[href^="download.php?id="] + attribute: href + poster: + selector: img[data-src] + attribute: data-src + imdbid: + # site currently only has a badge and rating, the id is not present. just in case a future update. + selector: a[href*="imdb.com/title/tt"] + attribute: href + doubanid: + # site currently only has a badge and rating, the id is not present. just in case a future update. + selector: a[href*="movie.douban.com/subject/"] + attribute: href + date_elapsed: + # time type: time elapsed (default) + selector: td.rowfollow:nth-child(4) > span[title] + attribute: title + optional: true + filters: + - name: append + args: " +08:00" # CST + - name: dateparse + args: "2006-01-02 15:04:05 -07:00" + date_added: + # time added + selector: td.rowfollow:nth-child(4):not(:has(span)) + optional: true + filters: + - name: append + args: " +08:00" # CST + - name: dateparse + args: "2006-01-0215:04:05 -07:00" + date: + text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" + size: + selector: td.rowfollow:nth-child(5) + seeders: + selector: td.rowfollow:nth-child(6) + leechers: + selector: td.rowfollow:nth-child(7) + grabs: + selector: td.rowfollow: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.0 + minimumseedtime: + # 1 day (as seconds = 24 x 60 x 60) + text: 86400 + description: + selector: td.rowfollow:nth-child(2) + remove: a, img +# NexusPHP v1.7.29 2022-10-12