API tidak resmi ( backend ) untuk pelacak torrent RuTracker, Kinozal, RuTor dan NoNameClub. Digunakan untuk pencarian distribusi yang cepat dan terpusat, menerima file torrent, tautan magnetis, dan informasi terperinci tentang distribusi berdasarkan judul film, serial atau pengidentifikasi distribusi, dan juga menyediakan umpan RSS berita ke semua penyedia dengan penyaringan berdasarkan kategori.
Anda dapat menggunakan versi publik dan gratis yang diterbitkan di Vercel serta menerapkannya sendiri di platform cloud apa pun menggunakan tanpa server atau lokal dengan Docker.
Spesifikasi OpenAPI tersedia di situs resmi Swagger Hub.
Dirilis di bawah lisensi MIT.
Anda tidak perlu menggunakan VPN saat menggunakan versi publik, karena layanan ini berperan sebagai gateway, yang memungkinkan Anda mengintegrasikan API
ke dalam proyek apa pun tanpa batasan jaringan dan juga menggunakan umpan berita di perangkat seluler, misalnya melalui ReadYou atau Pengumpan. Tidak diperlukan token akses dan otorisasi di pelacak agar API dapat berfungsi.
Proyek ini terinspirasi oleh Torrent-Api-py (sebelumnya Torrents-Api) untuk penyedia torrent berbahasa Rusia.
XML
, serta JSON
.Penerapan antarmuka pengguna yang sederhana (seperti Jackett) tersedia melalui ekstensi Google Chrome? Libre Kinopoisk untuk mencari distribusi secara bersamaan di semua pelacak torrent yang tersedia dan mengunduh konten melalui tautan magnet atau file torrent langsung dari pelacak.
Plugin Torrent Search untuk mencari distribusi dengan cepat di semua pelacak torrent yang tersedia melalui antarmuka Wox, yang tersedia untuk instalasi dari repositori plugin.
Nama penyedia | Cermin | Pendaftaran | Filter untuk pencarian dan RSS | Cari berdasarkan ID | RSS |
---|---|---|---|---|---|
Pelacak Ru | 3 | Ya* | Kategori | Ya | Warga asli |
Kinozal | 3 | Ya* | Kategori, tahun rilis, format | Ya | Kebiasaan |
RuTor | 2 | TIDAK | Kategori | Ya | Kebiasaan |
Klub Tanpa Nama | 1 | TIDAK | Kategori | Ya | Warga asli |
* Pendaftaran hanya diperlukan saat mengunduh file torrent melalui tautan langsung. Semua distribusi ketika mencari berdasarkan id (pengidentifikasi) berisi informasi jumlah hash dan tautan magnet (sudah berisi daftar server pelacak torrent saat ini), yang memungkinkan untuk segera mulai memuat distribusi konten atau menghasilkan file torrent setelah mengunduh metadata menggunakan klien torrent apa pun, misalnya qBittorrent (mendukung RSS dan plugin pencarian), Transmisi atau Webtorrent Desktop.
Akses ke RSS feed untuk RuTracker dan NoNameClub adalah dengan mengalihkan saluran asli. Untuk penyedia Kinozal dan RuTor , umpan berita dari beranda telah diterapkan yang mendukung pemfilteran berdasarkan kategori.
Anda dapat menerapkan API publik Anda sendiri ke Vercel dari repositori ini, cukup klik tombol di bawah dan ikuti petunjuknya:
Proyek ini menggunakan Tindakan GitHub untuk membangun kontainer Docker dan secara otomatis menguji fungsionalitas semua titik akhir.
Unggah gambar dan jalankan kontainer dari Docker Hub:
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped lifailon/torapi:latest
Jika Anda menggunakan server proksi:
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
Ganti isi variabel untuk menghubungkan ke server Proxy dengan milik Anda sendiri. Jika Anda tidak menggunakan otorisasi pada server proxy, jangan tentukan parameter ini saat memulai penampung.
Anda dapat mengunduh dan menggunakan file docker-compose untuk membangun container dari 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
Edit variabel lingkungan dalam file .env (diperlukan jika menggunakan server proxy) dan mulai penampung:
docker-compose up -d
Anda dapat menyimpan gambar yang diunduh dari Docker Hub untuk ditransfer ke mesin yang tidak memiliki akses Docker Hub:
docker save -o TorAPI-Docker-Image.tar lifailon/torapi
Dalam file rilis Anda dapat mengunduh image yang telah disiapkan dan mem-boot-nya di mesin Anda:
docker load -i TorAPI-Docker-Image.tar
Jalankan container dari image lokal yang diunduh:
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped lifailon/torapi:latest
Anda dapat membuat gambar sendiri dari file sumber proyek menggunakan dockerfile.
Kloning repositori ini:
git clone https://github.com/Lifailon/TorAPI
cd TorAPI
Edit variabel atau pengaturan lain di dockerfile
jika perlu:
ENV PROXY_ADDRESS= " 192.168.3.100 "
ENV PROXY_PORT= " 9090 "
ENV USERNAME= " TorAPI "
ENV PASSWORD= " TorAPI "
Bangun gambar dan jalankan container:
docker build -t torapi .
docker run -d --name TorAPI -p 8443:8443 --restart=unless-stopped torapi
Untuk menginstal proyek dan semua dependensi, Anda dapat menggunakan manajer paket npm:
npm install -g torapi
Kloning repositori, instal dependensi, dan mulai server:
git clone https://github.com/Lifailon/TorAPI
cd TorAPI
npm install
npm start
Secara default, server akan diluncurkan pada port 8443
.
Anda dapat menentukan port lain:
npm start -- -- port 2024
Untuk pengembangan, gunakan mode nodemon (restart server ketika konten file berubah):
npm run dev
Gunakan proxy untuk semua permintaan:
npm start -- -- port 2024 -- proxyAddress 192.168 .3 .100 -- proxyPort 9090
Jika otorisasi pada server proxy diperlukan:
npm start -- -- port 2024 -- proxyAddress 192.168 .3 .100 -- proxyPort 9090 -- username TorAPI -- password TorAPI
Dokumentasi tersedia di Swagger UI di: http://localhost:8443/docs
melalui modul swagger-ui-express. Dokumentasinya dijelaskan melalui perpustakaan swagger-jsdoc.
Untuk membuat file dokumentasi Swagger terkini atau diperbarui dalam format JSON
dan YAML
, gunakan perintah:
npm run docs
Anda dapat menjalankan pengujian untuk memeriksa kesehatan semua titik akhir di konsol dengan cepat:
npm start -- --test
Selama pengujian, server lokal dimulai, permintaan dibuat ke titik akhir /api/provider/test
, output dicatat dalam format JSON dan server keluar.
Ubah parameter header dalam permintaan:
npm start -- --test --q " The Rookie "
Pengujian berparameter juga tersedia melalui GitHub Actions menggunakan Postman melalui newman dalam format JUnit
:
Untuk menjalankan pengujian secara lokal:
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 - Ekstensi Google Chrome yang menambahkan tombol ke situs web Kinopoisk dan menyediakan antarmuka TorAPI dalam gaya Jackett (tanpa perlu memasang bagian server dan menggunakan VPN) untuk mencari film dan serial dalam sumber terbuka dengan cepat.
? Bot Kinozal - Bot Telegram yang memungkinkan Anda mengotomatiskan proses pengiriman konten ke TV hanya dengan menggunakan ponsel Anda. Menyediakan antarmuka yang nyaman untuk berinteraksi dengan pelacak torrent Kinozal dan database TMDB untuk melacak tanggal rilis episode, musim dan mencari aktor untuk setiap episode, serta kemampuan untuk mengelola klien torrent qBittorrent atau Transmisi di komputer Anda, menjadi jauh dari rumah dan dari antarmuka tunggal.
❤️ WebTorrent Desktop api - cabang dari klien WebTorrent Desktop, yang menambahkan mekanisme kendali jarak jauh melalui REST API
berdasarkan Express Framework.
? Reverse Proxy .NET - utilitas baris perintah lintas platform untuk mengimplementasikan server proxy terbalik berbasis .NET . Ini digunakan untuk menyediakan akses ke host di jaringan dari satu antarmuka jaringan ke aplikasi jarak jauh melalui protokol TCP , UDP atau HTTP/HTTPS (permintaan GET
dan POST
didukung untuk mengakses sumber daya eksternal melalui Internet) yang tersedia melalui antarmuka jaringan lain (misalnya melalui VPN ) di host Anda tanpa konfigurasi yang tidak perlu dan dengan dukungan otorisasi.