kat-cr 是一個簡單、靈活的 CLI 應用程式和節點模組,用於搜尋 kat.cr 中的種子。 Kickass Torrents 不再完全支援 JSON API,也缺少 RSS feed。 Kickass Torrents 提供的基於瀏覽器的主要搜尋引擎提供了最多的功能,因此該應用程式使用它來搜尋 torrent。
要使用 CLI 應用程序,請使用
npm install -g kat-cr
這會將可執行的kickass
安裝到您的PATH
中。
若要用作模組,請使用以下命令安裝到您的專案中
npm install --save kat-cr
基本的種子搜尋看起來像這樣
kickass -c tv south park
在此範例中,傳遞了可選的 -c 標誌來指定搜尋類別。 kat.cr 以 25 個為一組傳回搜尋結果,結果上限為 10000。因此,如果您想轉到南方公園電視種子的第二頁,您可以運行
kickass south park -c tv -p 2
預設情況下, kickass
將顯示直接 torrent 鏈接,但如果您提供-m
或--magnet
選項,則返回的鏈接將是磁力鏈接。舉個例子:
kickass south park -c tv -p 2 -m
如果是 Kickass Torrents 驗證的會員發布的 torrent,則 torrent 標題將以粗體黃色顯示,並且在 Kickass Torrents 精英會員發布的任何 torrent 之前都會有一個紫色的ELITE
限定符。
這就是全部內容。預設情況下,應用程式和模組按播種者按降序對種子進行排序。若要變更此行為,請傳遞 -f/--field 標誌或 -s/--sorder 標誌(下面詳細介紹了這些選項的可能值)。請注意,您不必將多字搜尋查詢括在引號中。
要在您的應用程式中使用此模組,請將其安裝到您的專案中並使用
var kickass = require('kat-cr');
kat-cr
使用 Promise API;您可以執行基本搜尋
kickass('search query').then(function (results) {
// do something with results
}, function (err) {
// handle error
});
您可以透過將物件而不是字串傳遞給函數來執行高級搜尋。該物件可以包含以下鍵
search
{string}:搜尋查詢category
{string}:搜尋類別page
{number}:傳回結果的第頁號field
{string}:結果排序的字段,預設為「seeders」。其他可能性包括“time_add”、“files_count”、“size”和“leechers”sorder
{string}:結果顯示的順序,預設為「desc」。或者你可以使用“asc”此承諾解析的對象旨在模仿當前功能不足的 Kickass Torrent JSON API 返回的 JSON 響應,但實際對像是自定義的KickassResultGroup
對象,現階段其原型上沒有任何方法,但包含與整個搜索結果相關的一些屬性:
results.total_results
{number}:Torrent 結果總數results.link
{string}:永遠為“http://kat.cr”results.language
{string}:使用此模組,您將始終得到“en-us”results.list
{Array}:包含種子及其資訊的陣列大部分資訊將位於results.list
中。 torrent 物件的屬性是:
title
{string}:torrent 的標題category
{string}:torrent 的類別link
{string}:kat.cr 上 torrent 頁面的鏈接pubDate
{Date}:代表種子發布日期的 Date 實例torrentLink
{string}: torrent 檔案的直接 http 鏈接magnetLink
{string}:與 torrent 關聯的磁力鏈接files
{number}:與 torrent 關聯的檔案數量comments
{number}:torrent 在 kat.cr 上收到的評論數量hash
{number}:torrent 的哈希摘要peers
{number}:與 torrent 關聯的對等點數量seeds
{number}:與 torrent 關聯的播種者數量leechs
{number}:下載 torrent 的 leech 數量size
{number}:torrent 提供的檔案大小,以位元組為單位verified
{boolean}:torrent 是否由 Kickass Torrents 驗證用戶發布elite
{boolean}:種子是否由 Kickass Torrents 菁英用戶發布id
{string}:kat.cr上的torrent ID,可用來呼叫API函數results.list
中的每一項其實都是KickassResult
對象,目前其原型有以下方法:
KickassResult#getComments()
:傳回一個以評論對象陣列解析的承諾,該陣列有一個owner
和一個comment
屬性,分別代表評論發布者的螢幕名稱和評論內容KickassResult#getDetails()
:向與 torrent 結果關聯的專用網頁發出 HTTP 請求,並傳回一個承諾,該承諾將解析為包含有關 torrent 的其他詳細資訊的物件。在此階段,解析物件提供的唯一附加詳細資訊儲存在description
屬性中,其中包含 torrent 描述的純文字版本記錄磁力連結並取得種子最多的《南方公園》種子的評論:
kickass({
search: 'south park',
field: 'seeders',
sorder: 'desc',
category: 'tv'
}).then(function (results) {
console.log(results.list[0].magnetLink);
results.list[0].getComments().then(function (comments) {
// do something with comments
});
});
Kickass Torrents 的 URL 預計會有所變動。如果尚未更新,請將新 URL 放入config/kickass-url.json
始終保持您的全球kat-cr
軟體包更新。
kat-cr 是一個網頁抓取模組,因此它取決於 Kickass Torrents 搜尋回應的結構以及 Kickass Torrents 伺服器的目前網域。如果 Kickass Torrents 更新,請運行
npm test
專案目錄中的內容將指示嘗試將 Kickass Torrents 搜尋回應轉換為KickassResultGroup
物件時到底出了什麼問題,並邀請貢獻者提交拉取請求來修正 API 端點、網域名稱或 CSS 選擇器。
確保mocha
已全域安裝,並且在嘗試執行測試之前在專案目錄中執行npm install
。
原始碼已完整記錄。若要建立文檔,請確保grunt-cli
軟體包已全域安裝,並且已在專案目錄中執行npm install
,然後執行
grunt
在專案目錄中。若要查看原始程式碼文檔,請在您喜歡的 Web 瀏覽器中開啟 doc/index.html。
麻省理工學院。請隨意修改和分發。
雷蒙德普爾弗四世