토렌트 추적기 RuTracker, Kinozal, RuTor 및 NoNameClub용 비공식 API( 백엔드 )입니다. 빠르고 중앙 집중화된 배포 검색, 토렌트 파일 수신, 마그네틱 링크 및 영화 제목, 시리즈 또는 배포 식별자별 배포에 대한 자세한 정보 수신에 사용되며 카테고리별로 필터링하여 모든 공급자에게 뉴스 RSS 피드를 제공합니다.
Vercel에 게시된 공개 및 무료 버전을 사용할 수 있을 뿐만 아니라 Docker와 함께 서버리스 또는 로컬을 사용하여 모든 클라우드 플랫폼에 직접 배포할 수도 있습니다.
OpenAPI 사양은 공식 Swagger Hub 웹사이트에서 확인할 수 있습니다.
MIT 라이센스에 따라 출시되었습니다.
공개 버전을 사용할 때 VPN을 사용할 필요가 없습니다. 이 서비스는 네트워크 제한 없이 모든 프로젝트에 API
통합할 수 있고 ReadYou 등을 통해 모바일 장치에서 뉴스 피드를 사용할 수 있는 게이트웨이 역할을 하기 때문입니다. 또는 피더. API가 작동하려면 추적기의 액세스 토큰 및 인증이 필요하지 않습니다.
프로젝트는 러시아어를 사용하는 토렌트 제공업체를 위한 Torrent-Api-py(이전의 Torrents-Api)에서 영감을 받았습니다.
XML
및 JSON
형식으로 사용된 모든 공급자에 대한 RSS 새 피드를 받으세요.간단한 사용자 인터페이스(예: Jackett)의 구현은 Google Chrome 확장 프로그램을 통해 사용할 수 있습니다. Libre Kinopoisk는 사용 가능한 모든 토렌트 추적기에서 배포판을 동시에 검색하고 추적기에서 직접 마그넷 링크 또는 토렌트 파일을 통해 콘텐츠를 다운로드합니다.
플러그인 저장소에서 설치할 수 있는 Wox 인터페이스를 통해 사용 가능한 모든 토렌트 추적기의 배포판을 빠르게 검색하기 위한 토렌트 검색 플러그인입니다.
제공자 이름 | 거울 | 등록 | 검색 및 RSS용 필터 | ID로 검색 | RSS |
---|---|---|---|---|---|
RuTracker | 3 | 예* | 범주 | 예 | 토종의 |
키노잘 | 3 | 예* | 카테고리, 출시 연도, 형식 | 예 | 관습 |
루토르 | 2 | 아니요 | 범주 | 예 | 관습 |
NoNameClub | 1 | 아니요 | 범주 | 예 | 토종의 |
* 직접 링크를 통해 토렌트 파일을 다운로드하는 경우에만 등록이 필요합니다. ID (식별자)로 검색할 때 모든 배포에는 정보 해시 합계 및 마그넷 링크 (이미 현재 토렌트 추적기 서버 목록이 포함되어 있음)가 포함되어 있어 콘텐츠 배포 로드를 즉시 시작하거나 qBittorrent와 같은 토렌트 클라이언트를 사용하여 메타데이터를 다운로드한 후 토렌트 파일을 생성할 수 있습니다. (RSS 및 검색 플러그인 지원), Transmission 또는 Webtorrent Desktop.
RuTracker 및 NoNameClub 의 RSS 피드에 대한 액세스는 원래 채널을 리디렉션하는 방식으로 이루어집니다. Kinozal 및 RuTor 제공업체의 경우 카테고리별 필터링을 지원하는 홈페이지의 캐스팅된 뉴스 피드가 구현되었습니다.
이 저장소에서 Vercel에 자신의 공개 API를 배포할 수 있습니다. 아래 버튼을 클릭하고 지침을 따르십시오.
프로젝트는 GitHub Actions를 사용하여 Docker 컨테이너를 구축하고 모든 엔드포인트의 기능을 자동으로 테스트합니다.
이미지를 업로드하고 Docker Hub에서 컨테이너를 실행합니다.
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped lifailon/torapi:latest
프록시 서버를 사용하는 경우:
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped
-e PROXY_ADDRESS= " 192.168.3.100 "
-e PROXY_PORT= " 9090 "
-e USERNAME= " TorAPI "
-e PASSWORD= " TorAPI "
lifailon/torapi:latest
프록시 서버에 연결하기 위한 변수의 내용을 자신의 것으로 바꿉니다. 프록시 서버에서 인증을 사용하지 않는 경우 컨테이너를 시작할 때 이러한 매개변수를 지정하지 마세요.
docker-compose 파일을 다운로드하고 사용하여 Docker Hub에서 컨테이너를 빌드할 수 있습니다.
curl -sO https://raw.githubusercontent.com/Lifailon/TorAPI/main/docker-compose.yml
curl -sO https://raw.githubusercontent.com/Lifailon/TorAPI/main/.env.yml
.env 파일에서 환경 변수를 편집하고(프록시 서버를 사용하는 경우 필수) 컨테이너를 시작합니다.
docker-compose up -d
Docker Hub에서 다운로드한 이미지를 저장하여 Docker Hub 액세스 권한이 없는 머신으로 전송할 수 있습니다.
docker save -o TorAPI-Docker-Image.tar lifailon/torapi
릴리스 파일에서 준비된 이미지를 다운로드하고 머신에서 부팅할 수 있습니다.
docker load -i TorAPI-Docker-Image.tar
다운로드한 로컬 이미지에서 컨테이너를 실행합니다.
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped lifailon/torapi:latest
dockerfile을 사용하여 프로젝트의 소스 파일에서 직접 이미지를 빌드할 수 있습니다.
다음 저장소를 복제하세요.
git clone https://github.com/Lifailon/TorAPI
cd TorAPI
필요한 경우 dockerfile
에서 변수 또는 기타 설정을 편집합니다.
ENV PROXY_ADDRESS= " 192.168.3.100 "
ENV PROXY_PORT= " 9090 "
ENV USERNAME= " TorAPI "
ENV PASSWORD= " TorAPI "
이미지를 빌드하고 컨테이너를 실행합니다.
docker build -t torapi .
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped torapi
프로젝트와 모든 종속성을 설치하려면 패키지 관리자 npm을 사용할 수 있습니다.
npm install -g torapi
저장소를 복제하고 종속성을 설치하고 서버를 시작합니다.
git clone https://github.com/Lifailon/TorAPI
cd TorAPI
npm install
npm start
기본적으로 서버는 포트 8443
에서 시작됩니다.
다른 포트를 지정할 수 있습니다.
npm start -- -- port 2024
개발을 위해서는 nodemon 모드를 사용하세요(파일 내용이 변경되면 서버를 다시 시작합니다):
npm run dev
모든 요청에 프록시를 사용합니다.
npm start -- -- port 2024 -- proxyAddress 192.168 .3 .100 -- proxyPort 9090
프록시 서버에 대한 인증이 필요한 경우:
npm start -- -- port 2024 -- proxyAddress 192.168 .3 .100 -- proxyPort 9090 -- username TorAPI -- password TorAPI
설명서는 swagger-ui-express 모듈을 통해 http://localhost:8443/docs
의 Swagger UI 에서 확인할 수 있습니다. 문서는 swagger-jsdoc 라이브러리를 통해 설명됩니다.
JSON
및 YAML
형식으로 최신 Swagger 문서 파일을 생성하거나 업데이트하려면 다음 명령을 사용하십시오.
npm run docs
테스트를 실행하여 콘솔에서 모든 엔드포인트의 상태를 빠르게 확인할 수 있습니다.
npm start -- --test
테스트하는 동안 로컬 서버가 시작되고 엔드포인트 /api/provider/test
에 대한 요청이 이루어지며 출력이 JSON 형식으로 기록되고 서버가 종료됩니다.
요청 시 헤더 매개변수를 변경합니다.
npm start -- --test --q " The Rookie "
매개변수화된 테스트는 JUnit
형식의 Newman을 통해 Postman을 사용하여 GitHub Actions를 통해 사용할 수도 있습니다.
로컬에서 테스트를 실행하려면 다음 안내를 따르세요.
npm install -g newman
newman run postman-tests.json
--iteration-count 1
--env-var " baseUrl=http://localhost:8443 "
--env-var " query=The Rookie "
--env-var " queryAllPage=test "
--env-var " categoryRuTracker=1605 "
--env-var " categoryKinozal=20 "
--env-var " categoryRuTor=10 "
--env-var " categoryNoNameClub=1318 "
...
┌─────────────────────────┬────────────────────┬───────────────────┐
│ │ executed │ failed │
├─────────────────────────┼────────────────────┼───────────────────┤
│ iterations │ 1 │ 0 │
├─────────────────────────┼────────────────────┼───────────────────┤
│ requests │ 45 │ 0 │
├─────────────────────────┼────────────────────┼───────────────────┤
│ test-scripts │ 167 │ 0 │
├─────────────────────────┼────────────────────┼───────────────────┤
│ prerequest-scripts │ 154 │ 0 │
├─────────────────────────┼────────────────────┼───────────────────┤
│ assertions │ 169 │ 0 │
├─────────────────────────┴────────────────────┴───────────────────┤
│ total run duration: 32s │
├──────────────────────────────────────────────────────────────────┤
│ total data received: 1.95MB (approx) │
├──────────────────────────────────────────────────────────────────┤
│ average response time: 663ms [min: 2ms, max: 6.1s, s.d.: 1216ms] │
└──────────────────────────────────────────────────────────────────┘
? LibreKinopoisk - Kinopoisk 웹사이트에 버튼을 추가하고 오픈 소스에서 영화와 시리즈를 빠르게 검색할 수 있도록 Jackett 스타일의 TorAPI 인터페이스(서버 부분을 설치하고 VPN을 사용할 필요 없음)를 제공하는 Google Chrome 확장 프로그램입니다.
? Kinozal 봇 - 휴대폰만 사용하여 TV에 콘텐츠를 전달하는 프로세스를 자동화할 수 있는 Telegram 봇입니다. 토렌트 추적기 Kinozal 및 데이터베이스 TMDB와 상호 작용하여 에피소드, 시즌의 출시 날짜를 추적하고 각 에피소드의 배우를 검색할 수 있는 편리한 인터페이스를 제공할 뿐만 아니라 컴퓨터에서 토렌트 클라이언트 qBittorrent 또는 전송을 관리할 수 있는 기능도 제공합니다. 집에서 원격으로 단일 인터페이스에서.
❤️ WebTorrent Desktop API - Express Framework 기반 REST API
통해 원격 제어 메커니즘을 추가한 WebTorrent Desktop 클라이언트의 포크입니다.
? 역방향 프록시 .NET - .NET 기반 역방향 프록시 서버를 구현하기 위한 크로스 플랫폼 명령줄 유틸리티입니다. 이는 POST
네트워크 인터페이스 ( 예 GET
VPN )은 불필요한 구성 없이 승인 지원을 통해 호스트에서 가능합니다.