จะดาวน์โหลดเพลย์ลิสต์ youtube ด้วยคำนำหน้าหมายเลขผ่านทาง youtube-dl ได้อย่างไร?


54

ฉันมีรายการเล่น Youtube ฉันต้องการดาวน์โหลด แต่ฉันต้องการให้ youtube-dl ตั้งชื่อไฟล์เช่น 1- {name}, 2- {name}, ... n- {name} เพื่อให้สามารถดูได้ อยู่ในลำดับเดียวกับเพลย์ลิสต์ Youtube ดั้งเดิม กล่าวอีกนัยหนึ่งฉันต้องการวิดีโอที่ดาวน์โหลดมาเพื่อนำหน้าด้วยตัวเลข ฉันจะทำสิ่งนั้นได้อย่างไร

คำตอบ:


77

ทางออกที่ดีที่สุดที่ฉันพบคือ:

youtube-dl -o "%(playlist_index)s-%(title)s.%(ext)s" <playlist_link>

1
ความแตกต่างระหว่าง%(playlist_index)sและ%(autonumber)sคืออะไร?
Flimm

6
@Flimm autonumber ใช้หมายเลขในคิวการดาวน์โหลดของคุณหากคุณรีสตาร์ทการดาวน์โหลดมันจะถูกรีเซ็ต playlist_index ใช้ดัชนีของวิดีโอในเพลย์ลิสต์และเป็นตัวเลือกที่ดีกว่าถ้าคุณต้องการหยุดและเริ่มดาวน์โหลดต่อในภายหลัง
Iman Mohamadi

14

ฉันคิดว่าใช้

youtube-dl --auto-number url

จะทำมัน


2
นี่เป็นเพียงปัญหาเดียวเท่านั้นและมันยุ่งกับชื่อและแทนที่ส่วนหนึ่งของชื่อด้วยตัวเลข ฉันแก้ไขปัญหาด้วยตัวเองโดยรับแนวคิดหลักจากคำตอบของคุณ
Iman Mohamadi

@ImanMohamadi คุณช่วยกรุณาโพสต์สิ่งที่คุณทำเพื่อแก้ไขปัญหาที่คุณกล่าวถึง?
Igor Stoppa

1
@IgorStoppa ฉันได้เพิ่มมันเป็นคำตอบของฉันแล้วเลือกทางออกที่ดีที่สุด ดูด้านบน.
Iman Mohamadi

3
"คำเตือน: - หมายเลขอัตโนมัติเลิกใช้แล้วใช้ -o"% (จำนวนอัตโนมัติ) s -% (ชื่อ) s.% (ต่อ) s "แทน"
Boris Pavlović

7

โปรดใช้ลิงค์ด้านล่างเพื่อดาวน์โหลดเพลย์ลิสต์ในจำนวนที่เพิ่มขึ้นในตอนแรกตามด้วยชื่อของเนื้อหา

youtube-dl -cio '%(autonumber)s-%(title)s.%(ext)s' 'Paste your playlist link'

2
คำตอบนี้จะดีกว่าคำตอบที่ยอมรับได้อย่างไร
Fabby

ลองและตรวจสอบว่าดีที่สุด
Sairam62cse

ที่จริงแล้วเขาสามารถตรวจสอบหน้าคนและดูว่าตัวเลือกเหล่านั้นทำอะไร ตามที่ฉันต้องการ
userDepth

1
c: บังคับให้ดาวน์โหลดต่อ - i: ละเว้นข้อผิดพลาด (เช่นวิดีโอใช้งานไม่ได้) - o: ตำแหน่งเอาต์พุต
damccull

2

ใช้-oตัวเลือกด้วยplaylist_indexและรูปแบบ<n>dดังนี้:

youtube-dl -o "%(playlist_index)2d - %(title)s.%(ext)s"
#                               .
#                              /|\
#                               |

หรือ3dหรือ4dและอื่น ๆ เช่นใน C printf:

  • ใช้2dคุณจะได้รับตัวเลขเริ่มต้นจาก 01
  • ใช้3dคุณจะได้รับตัวเลขเริ่มต้นจาก 001
  • และอื่น ๆ ...

1
ควรแทนที่ "2d" ด้วย "02d" เพื่อรับเช่น "01 - title" แทนชื่อ "1 - title"
atmin

@atmin - 2dทำเช่นนั้นแล้ว
นาบิลคาดิมิ

มันไม่ได้สำหรับฉันyoutube-dl --version2018.12.09
atmin

มันไม่ได้สำหรับฉันเช่นกัน เวอร์ชัน youtube-dl ของฉันคือ 2019.06.27 ใช้งาน "02d" แล้ว
John Pankowicz

1

ที่ดีเยี่ยม! แต่จะปล่อยให้คุณมีไฟล์ชื่อ 00001nameoffile
เพื่อให้ทำงาน:

เปลี่ยนชื่อ 's / 000 // g' *

หลังจากนั้น
จะได้รับ 01,02,03 เป็นต้น
สำหรับบรรทัดนี้ด้านล่าง

youtube-dl -cio '% (autonumber) s -% (ชื่อ) s.% (ต่อ) s' 'วางลิงก์เพลย์ลิสต์ของคุณ'

หรือเป็นหนึ่งบรรทัด:

youtube-dl -cio '% (autonumber) s -% (ชื่อเรื่อง) s.% (ต่อ) s' url; เปลี่ยนชื่อ 's / 000 // g' *

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.