เครื่องมือดาวน์โหลดทางเลือกที่เรียบง่ายของ ebooks Legimi ที่เขียนด้วยภาษา Go
โดยพื้นฐานแล้วจะเป็นการเขียนใหม่ของตัวดาวน์โหลดก่อนหน้าใน Lua
มันไม่เป็นทางการเลย ฉันไม่มีส่วนเกี่ยวข้องกับ Legimi แต่อย่างใด
บันทึก
การดำเนินการนี้ยังคงอยู่ในระหว่างดำเนินการ อย่างไรก็ตาม สามารถใช้งานได้แล้ว
คุณสามารถดูข้อมูลเพิ่มเติมเกี่ยวกับความเป็นมาของสิ่งนี้ได้ในพื้นหลัง
เพียงดาวน์โหลดไฟล์เก็บถาวรจากส่วน Releases แกะและทำให้สามารถเรียกใช้งานได้ (หากจำเป็น): $ chmod +x legimi-go
คุณสามารถเพิ่มไดเร็กทอรีการติดตั้งลงในตัวแปร PATH
ของคุณเพื่อให้สามารถเรียกใช้ได้จากทุกที่แน่นอน
หรือหากคุณติดตั้ง Go ไว้แล้ว คุณสามารถติดตั้งได้โดยใช้คำสั่ง go install
:
$ go install github.com/tp86/legimi-go@ < version >
อาจเป็นแท็กเวอร์ชันเฉพาะจากรีลีสหรือ latest
เพื่อรับโค้ดจากสาขา main
โปรดทราบว่าสาขา main
อาจมีคุณสมบัติที่ยังไม่เสร็จ ฉันพยายามอย่างเต็มที่เพื่อคอมมิตโค้ดที่ใช้งานได้เท่านั้น
หากต้องการดูการใช้งาน ให้เรียกใช้:
$ legimi-go --help
สวิตช์บรรทัดคำสั่งทั้งหมดเป็นทางเลือก
--config path
เส้นทางไปยังไฟล์การกำหนดค่า ค่าเริ่มต้นคือ "$HOME/.config/legimi-go/config.ini"
ไฟล์การกำหนดค่าประกอบด้วยข้อมูลรับรองและ Kindle Id ของคุณตามที่กำหนดโดยบริการ Legimi มันจะถูกสร้างขึ้นโดยอัตโนมัติ (โดยไม่มีไดเร็กทอรีหายไป) เมื่อรันคำสั่งครั้งแรก ดังนั้นโดยทั่วไปคุณไม่จำเป็นต้องแก้ไขด้วยตนเอง หากคุณไม่ต้องการจัดเก็บข้อมูลการเข้าสู่ระบบและรหัสผ่านไว้ในไฟล์ คุณสามารถระบุข้อมูลรับรองในบรรทัดคำสั่งได้ (ดู --login
และ --password
สวิตช์)
เคล็ดลับ
คุณสามารถสร้างไฟล์การกำหนดค่าได้หลายไฟล์เพื่อให้คุณสามารถสลับระหว่างหลายบัญชีได้อย่างง่ายดาย
--login login
การเข้าสู่ระบบ Legimi ของคุณ หากคุณไม่ได้ระบุการเข้าสู่ระบบจากบรรทัดคำสั่ง ระบบจะอ่านข้อมูลจากไฟล์กำหนดค่า หากไม่มีไฟล์การกำหนดค่าด้วย คุณจะถูกขอให้ระบุในระหว่างการดำเนินการคำสั่ง จากนั้นจะถูกจัดเก็บไว้ในไฟล์กำหนดค่า ดังนั้นคุณไม่จำเป็นต้องทำซ้ำในระหว่างการรันคำสั่งในอนาคต หากคุณระบุการเข้าสู่ระบบจากบรรทัดคำสั่ง ระบบจะไม่เขียนลงในไฟล์กำหนดค่า
--password password
รหัสผ่าน Legimi ของคุณ ตรรกะเดียวกันกับการเข้าสู่ระบบใช้ โปรดทราบว่าการเข้าสู่ระบบและรหัสผ่านจะถูกจัดเก็บไว้ในไฟล์กำหนดค่าเป็นข้อความธรรมดา
--debug
เปิดใช้งานโหมดการแก้ไขข้อบกพร่อง ในโหมดการดีบัก ข้อมูลที่เลือกเกี่ยวกับคำขอที่แลกเปลี่ยนและการตอบกลับจะถูกพิมพ์ไปที่ stderr ในปัจจุบัน ข้อมูลที่เป็นประโยชน์ที่สุดอาจมีอยู่ในการตอบสนองของเซสชัน
บันทึก
คุณสามารถให้สวิตช์ด้วยหนึ่ง ( -config
) หรือสองขีดกลาง ( --config
)
คำสั่งที่ใช้ได้คือ:
list
แสดงรายการหนังสือบนชั้นวาง Legimi ของคุณในปัจจุบัน
download
ดาวน์โหลดหนังสือที่ระบุรหัส สามารถรับรหัสหนังสือได้จากรายการหนังสือ (ค่าแรกในบรรทัดรายการหนังสือ)
version
พิมพ์เวอร์ชัน Legimi-go
การระบุคำสั่งเป็นสิ่งจำเป็น ไม่มีคำสั่งเริ่มต้น
ในการเรียกใช้คำสั่งแรก คุณจะได้รับแจ้งให้ระบุข้อมูลรับรอง (หากไม่ได้ระบุผ่านสวิตช์บรรทัดคำสั่ง โปรดดูด้านบน) และหมายเลขซีเรียลของ Kindle (การตั้งค่า -> ตัวเลือกอุปกรณ์ -> ข้อมูลอุปกรณ์ใน Kindle) Legimi Kindle Id จะถูกสอบถามและจัดเก็บไว้ในไฟล์กำหนดค่าโดยอัตโนมัติเพื่อใช้ในอนาคต
แสดงรายการหนังสือบนชั้นวางของคุณ
$ legimi-go list
หากคุณกำลังเรียกใช้สคริปต์เป็นครั้งแรก หรือส่งไฟล์การกำหนดค่าที่ยังไม่มีข้อมูลประจำตัว คุณจะได้รับแจ้งให้เข้าสู่ระบบและรหัสผ่าน
ดาวน์โหลดหนังสือที่เลือก
$ legimi-go download < book-id >
หนังสือที่ดาวน์โหลดจะถูกบันทึกลงในไฟล์
ในไดเร็กทอรีการทำงานปัจจุบัน
เคล็ดลับ
คุณสามารถ cd
ลงในไดเร็กทอรี documents
ของ Kindle ที่ติดตั้งไว้ก่อนที่จะดาวน์โหลดเพื่อหลีกเลี่ยงการคัดลอกไฟล์
คัดลอกไฟล์ไปยังไดเร็กทอรี documents
ของ Kindle
นี่เป็นทางเลือกหากคุณดาวน์โหลดหนังสือขณะอยู่ในไดเร็กทอรี documents
แน่นอนว่ารองรับเฉพาะฟังก์ชันย่อยของแอป Legimi อย่างเป็นทางการเท่านั้น
การตอบสนองข้อผิดพลาดส่วนใหญ่ยังไม่ได้รับการยอมรับ / จัดการ สิ่งนี้ควรปรับปรุงในอนาคต
สคริปต์ไม่ได้มีจุดมุ่งหมายเพื่อสร้างบัญชีหรือลงทะเบียนอุปกรณ์ที่ไม่รู้จักในบริการ Legimi คุณควรใช้แอปอย่างเป็นทางการสำหรับสิ่งนี้ การลงทะเบียนอุปกรณ์ใช้งานได้ แต่อาจทำให้เกิดปัญหาได้
หากคุณต้องการทราบว่ามีการดาวน์โหลดหนังสือเหลืออยู่กี่เล่มในช่วงการสมัครรับข้อมูล คุณสามารถใช้สวิตช์ -debug
และค้นหาข้อมูล downloads left
ในส่วน Session response
หากคุณกำลังพยายามดาวน์โหลดหนังสือมากกว่าที่คุณจำกัด บริการ Legimi จะบล็อกการดาวน์โหลด
หากมีบางอย่างไม่ทำงานตามที่คาดไว้ ให้ลองใช้สวิตช์ -debug
เพื่อรับข้อมูลเพิ่มเติม
ควรตรวจสอบแอป Legimi อย่างเป็นทางการด้วย เนื่องจากเป็นจุดอ้างอิง การใช้แอปอย่างเป็นทางการอาจช่วยแก้ไขปัญหาได้ (#3 (ความคิดเห็น))
แอป Legimi อย่างเป็นทางการไม่รองรับ Linux ฉันต้องการที่จะดาวน์โหลด eBook จาก Linux โดยไม่จำเป็นต้องสลับระหว่าง OS ต่างๆ (หรือแม้แต่ติดตั้ง Windows ไว้ด้วยซ้ำ)
ตัวดาวน์โหลดเวอร์ชันแรกถูกสร้างขึ้นใน Lua มันทำงานได้ดี แต่บางครั้งพิสูจน์แล้วว่าติดตั้งยาก (การขึ้นต่อกันที่ติดตั้งในเส้นทางที่ต่างกัน) นอกจากนี้ยังรักษาได้ยากและทำให้เกิดปัญหากับการอัปเดตโปรโตคอล Legimi ดังนั้นฉันจึงตัดสินใจเขียนสคริปต์ใหม่ใน Go ฉันหวังว่าจะติดตั้ง ใช้งาน และบำรุงรักษาได้ง่ายขึ้น
ฉันแยกตรรกะของการดาวน์โหลดหนังสือตามปริมาณการแลกเปลี่ยนระหว่างแอปพลิเคชันและบริการอย่างเป็นทางการของ Legimi ดังนั้นจึงมีชิ้นส่วนและคุณสมบัติที่ขาดหายไปอย่างแน่นอน นอกจากนี้ การตอบสนองข้อผิดพลาดส่วนใหญ่ยังไม่ได้รับการสนับสนุน ดูข้อจำกัดสำหรับคุณสมบัติที่ขาดหายไปเพิ่มเติม