kat-cr เป็นแอปพลิเคชัน CLI และโมดูลโหนดที่เรียบง่ายและยืดหยุ่น ซึ่งจะค้นหา kat.cr เพื่อหาทอร์เรนต์ JSON API ไม่ได้รับการสนับสนุนอย่างเต็มที่จาก Kickass Torrents อีกต่อไป และฟีด RSS ก็ขาดเช่นกัน เสิร์ชเอ็นจิ้นหลักบนเบราว์เซอร์ที่ Kickass Torrents นำเสนอมีคุณสมบัติส่วนใหญ่ ดังนั้นนั่นคือสิ่งที่แอปพลิเคชั่นนี้ใช้เพื่อค้นหาทอร์เรนต์
หากต้องการใช้แอปพลิเคชัน CLI ให้ใช้
npm install -g kat-cr
สิ่งนี้จะติดตั้ง kickass
ที่ปฏิบัติการได้ให้กับ PATH
ของคุณ
หากต้องการใช้เป็นโมดูล ให้ติดตั้งลงในโครงการของคุณด้วย
npm install --save kat-cr
การค้นหา torrent พื้นฐานจะมีลักษณะดังนี้
kickass -c tv south park
ในตัวอย่างนี้ แฟล็กทางเลือก -c ถูกส่งผ่านเพื่อระบุหมวดหมู่การค้นหา kat.cr ส่งคืนผลลัพธ์การค้นหาเป็นชุด 25 รายการ และจำกัดผลลัพธ์ไว้ที่ 10,000 คุณสามารถระบุเพจ # ที่คุณต้องการส่งคืนโดยส่งแฟล็ก -p ดังนั้นหากคุณต้องการไปที่หน้าสองของเพลง South Park TV คุณจะต้องดำเนินการ
kickass south park -c tv -p 2
ตามค่าเริ่มต้น kickass
จะแสดงลิงก์ฝนตกหนักโดยตรง แต่หากคุณระบุตัวเลือก -m
หรือ --magnet
ลิงก์ที่ส่งคืนจะเป็นลิงก์แม่เหล็ก เป็นตัวอย่าง:
kickass south park -c tv -p 2 -m
ชื่อทอร์เรนต์จะแสดงเป็นตัวหนาสีเหลือง หากเป็นทอร์เรนต์ที่โพสต์โดยสมาชิกที่ผ่านการตรวจสอบของ Kickass Torrents และจะมีรอบคัดเลือก ELITE
สีม่วง ก่อนทอร์เรนต์ใดๆ ที่โพสต์โดยสมาชิกชั้นสูงของ Kickass Torrents
และนั่นคือทั้งหมดที่มีให้ แอปพลิเคชันและโมดูลจะเรียงลำดับทอร์เรนต์โดย seeders จากมากไปน้อยตามค่าเริ่มต้น หากต้องการเปลี่ยนลักษณะการทำงานนี้ ให้ส่งแฟล็ก -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' อ็อบเจ็กต์ที่ได้รับการแก้ไขโดยคำสัญญานี้ได้รับการออกแบบมาเพื่อเลียนแบบการตอบสนอง JSON ที่ส่งคืนโดย Kickass Torrent JSON API ที่ขาดคุณสมบัติในปัจจุบัน แต่อ็อบเจ็กต์จริงคืออ็อบเจ็กต์ KickassResultGroup
แบบกำหนดเอง ซึ่งในขั้นตอนนี้ไม่มีวิธีการใด ๆ บนต้นแบบ แต่มี คุณสมบัติบางอย่างที่เกี่ยวข้องกับผลการค้นหาทั้งหมด:
results.total_results
{number}: จำนวนผลลัพธ์ทอร์เรนต์ทั้งหมดresults.link
{string}: 'http://kat.cr' เสมอresults.language
ภาษา {string}: การใช้โมดูลนี้คุณจะได้รับ 'en-us' เสมอresults.list
{Array}: อาร์เรย์ที่มี torrents และข้อมูลของมัน ข้อมูลจำนวนมากจะอยู่ใน results.list
คุณสมบัติของวัตถุฝนตกหนักคือ:
title
{string}: ชื่อของฝนตกหนักcategory
{string}: หมวดหมู่ของฝนตกหนักlink
{string}: ลิงค์ไปยังหน้า torrent บน kat.crpubDate
{Date}: อินสแตนซ์วันที่ที่แสดงถึงวันที่ที่เผยแพร่ทอร์เรนต์torrentLink
{string}: ลิงก์ http โดยตรงไปยังไฟล์ torrentmagnetLink
{string}: ลิงก์แม่เหล็กที่เกี่ยวข้องกับฝนตกหนักfiles
{number}: จำนวนไฟล์ที่เกี่ยวข้องกับทอร์เรนต์comments
{number}: จำนวนความคิดเห็นที่ torrent ได้รับบน kat.crhash
{number}: ข้อมูลแฮชของ torrentpeers
{number}: จำนวนเพียร์ที่เกี่ยวข้องกับทอร์เรนต์seeds
{number}: จำนวน seeders ที่เกี่ยวข้องกับ torrentleechs
{number}: จำนวนปลิงที่ดาวน์โหลดทอร์เรนต์size
{number}: ขนาดของไฟล์ที่ได้รับจากทอร์เรนต์ มีหน่วยเป็นไบต์verified
{boolean}: ทอร์เรนต์นั้นโพสต์โดยผู้ใช้ที่ตรวจสอบแล้วของ Kickass Torrents หรือไม่elite
{boolean}: ไม่ว่าทอร์เรนต์จะถูกโพสต์โดยผู้ใช้ระดับสูงของ Kickass Torrents หรือไม่id
{string}: ID ฝนตกหนักบน kat.cr ที่สามารถใช้เพื่อเรียกใช้ฟังก์ชัน API แต่ละรายการใน results.list
จริงๆ แล้วคือออบเจ็กต์ KickassResult
ซึ่งปัจจุบันมีวิธีการต่อไปนี้บนต้นแบบ:
KickassResult#getComments()
: ส่งคืนคำมั่นสัญญาที่แก้ไขด้วยอาร์เรย์ของอ็อบเจ็กต์ความคิดเห็น ซึ่งเป็น owner
และคุณสมบัติ comment
ที่แสดงถึงชื่อหน้าจอของผู้โพสต์ความคิดเห็นและเนื้อหาของความคิดเห็น ตามลำดับKickassResult#getDetails()
: ส่งคำขอ HTTP ไปยังหน้าเว็บเฉพาะที่เกี่ยวข้องกับผลลัพธ์ของ torrent และส่งคืนสัญญาที่แก้ไขด้วยอ็อบเจ็กต์ที่มีรายละเอียดเพิ่มเติมเกี่ยวกับ torrent ในขั้นตอนนี้ รายละเอียดเพิ่มเติมเพียงอย่างเดียวที่ได้รับจากออบเจ็กต์ที่ได้รับการแก้ไขจะถูกจัดเก็บไว้ในคุณสมบัติ 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
});
});
URL ไปยัง Kickass Torrents คาดว่าจะมีการเปลี่ยนแปลง ในกรณีที่ยังไม่ได้รับการอัปเดต ให้ใส่ 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 ในเว็บเบราว์เซอร์ที่คุณชื่นชอบ
เอ็มไอที. รู้สึกอิสระที่จะแก้ไขและแจกจ่าย
เรย์มอนด์ พัลเวอร์ที่ 4