kat-cr은 kat.cr에서 토렌트를 검색하는 간단하고 유연한 CLI 애플리케이션이자 노드 모듈입니다. JSON API는 더 이상 Kickass Torrents에서 완전히 지원되지 않으며 RSS 피드도 부족합니다. Kickass Torrents가 제공하는 기본 브라우저 기반 검색 엔진은 가장 많은 기능을 제공하므로 이 애플리케이션이 토렌트를 검색하는 데 사용하는 것입니다.
CLI 애플리케이션을 사용하려면
npm install -g kat-cr
그러면 PATH
에 실행 가능한 kickass
설치됩니다.
모듈로 사용하려면 다음을 사용하여 프로젝트에 설치하십시오.
npm install --save kat-cr
기본 토렌트 검색은 다음과 같습니다.
kickass -c tv south park
이 예에서는 검색 카테고리를 지정하기 위해 선택적 -c 플래그가 전달되었습니다. kat.cr은 검색 결과를 25개 세트로 반환하고 결과를 10000으로 제한합니다. -p 플래그를 전달하여 반환하려는 페이지 번호를 지정할 수 있습니다. 따라서 South Park TV 토렌트의 두 번째 페이지로 이동하려면 다음을 실행하세요.
kickass south park -c tv -p 2
기본적으로 kickass
직접 토렌트 링크를 표시하지만 -m
또는 --magnet
옵션을 제공하면 반환되는 링크는 마그넷 링크가 됩니다. 예를 들면:
kickass south park -c tv -p 2 -m
Kickass Torrents 인증 회원이 게시한 토렌트인 경우 토렌트 제목은 굵은 노란색으로 표시되며, Kickass Torrents 엘리트 회원이 게시한 토렌트 앞에는 보라색 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
{번호}: 반환된 결과의 페이지 번호field
{string}: 결과가 정렬되는 필드입니다. 기본값은 'seeders'입니다. 다른 가능성으로는 'time_add', 'files_count', 'size' 및 'leechers'가 있습니다.sorder
{string}: 결과가 표시되는 순서, 기본값은 'desc'입니다. 또는 'asc'를 사용할 수도 있습니다. 이 Promise에 의해 해결된 객체는 현재 기능이 부족한 Kickass Torrent JSON API에서 반환된 JSON 응답을 모방하도록 설계되었지만 실제 객체는 사용자 정의 KickassResultGroup
객체입니다. 이 단계에서는 프로토타입에 메서드가 없지만 다음을 포함합니다. 전체 검색 결과와 관련된 일부 속성:
results.total_results
{number}: 토렌트 결과의 총량results.link
{string}: 항상 'http://kat.cr'results.language
{string}: 이 모듈을 사용하면 항상 'en-us'를 얻게 됩니다.results.list
{Array}: 토렌트와 해당 정보를 포함하는 배열 대부분의 정보는 results.list
에 있습니다. 토렌트 개체의 속성은 다음과 같습니다.
title
{string}: 토렌트 제목category
{string}: 토렌트 카테고리link
{string}: kat.cr의 토렌트 페이지 링크pubDate
{Date}: 토렌트가 게시된 날짜를 나타내는 Date 인스턴스torrentLink
{string}: 토렌트 파일에 대한 직접 http 링크magnetLink
{string}: 토렌트와 연결된 자석 링크files
{번호}: 토렌트와 관련된 파일의 양comments
{number}: kat.cr에서 토렌트가 받은 댓글 수hash
{number}: 토렌트의 해시 다이제스트peers
{number}: 토렌트와 관련된 피어의 수seeds
{number}: 토렌트와 관련된 시더의 양leechs
{number}: 토렌트를 다운로드하는 거머리의 수size
{number}: 토렌트에서 제공하는 파일의 크기(바이트)verified
{boolean}: Kickass Torrents 인증된 사용자가 토렌트를 게시했는지 여부elite
{boolean}: Kickass Torrents 엘리트 사용자가 토렌트를 게시했는지 여부id
{string}: API 함수를 호출하는 데 사용할 수 있는 kat.cr의 토렌트 ID results.list
의 각 항목은 실제로 KickassResult
객체이며, 현재 프로토타입에 다음 메서드가 있습니다.
KickassResult#getComments()
: 댓글 포스터의 화면 이름과 댓글 내용을 각각 나타내는 owner
및 comment
속성이 있는 댓글 개체 배열로 해결되는 약속을 반환합니다.KickassResult#getDetails()
: 토렌트 결과와 연결된 전용 웹페이지에 HTTP 요청을 만들고 토렌트에 대한 추가 세부 정보가 포함된 개체로 해결되는 약속을 반환합니다. 이 단계에서 해결된 개체가 제공하는 유일한 추가 세부 정보는 토렌트 설명의 텍스트 전용 버전이 포함된 description
속성에 저장됩니다. 마그넷 링크를 기록하고 가장 많이 시드된 South Park 토렌트에 대한 댓글을 받으세요.
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
프로젝트 디렉토리에 있습니다. 소스 코드 문서를 보려면 즐겨 사용하는 웹 브라우저에서 doc/index.html을 엽니다.
MIT. 수정 및 배포는 자유롭게 해주세요.
레이먼드 펄버 IV