YouTube- dl के साथ YouTube प्लेलिस्ट डाउनलोड करना, मौजूदा फ़ाइलों को छोड़ देना


22

मैं सोच रहा था कि क्या एमपी 3 का उपयोग करके एक यूट्यूब प्लेलिस्ट डाउनलोड करना संभव है youtube-dl, पहले से मौजूद फ़ाइलों को छोड़ देना। मैं इस कमांड का उपयोग कर रहा हूं:

youtube-dl --continue --ignore-errors --no-overwrites --extract-audio --audio-format mp3 --output "%(title)s.%(ext)s" [path here]

और, भले ही मैंने इसे ओवरराइट न करने के लिए सेट किया है, लेकिन यह सब कुछ खरोंच से छुटकारा दिलाता है। क्या यह संभव है?


भले ही यह redownloads यह आम तौर पर उस विकल्प सेट के बिना भी डिफ़ॉल्ट रूप से फ़ाइल लिखने को छोड़ देता है
21

ठीक है, अगर मैं डाउनलोड किए गए वीडियो को एमपी 3 फ़ाइल के साथ रखता हूं, तो स्किपिंग फ़ंक्शन ठीक से काम करता है। ठीक वैसा नहीं जैसा मुझे चाहिए था लेकिन यह ठीक है।
योद्धा

जवाबों:


45

विकल्प के साथ --download-archive FILE youtube-dl दोनों पढ़ता है और फिर से डाउनलोड न करने के लिए फ़ाइलों की सूची में जुड़ जाता है। जब भी कोई फ़ाइल सफलतापूर्वक डाउनलोड होती है, तो उस वीडियो आईडी को जोड़ दिया जाता है FILE

आप इसका उपयोग इस प्रकार कर सकते हैं:

youtube-dl --download-archive downloaded.txt --no-post-overwrites -ciwx --audio-format mp3 -o "%(title)s.%(ext)s" [path here]

यह किसी भी वीडियो को तब से पहले ही डाउनलोड कर देगा जब तक कि आप एक आखिरी बार नहीं रखते क्योंकि यह सूची बनाता है। अब आप उन्हें हटा सकते हैं।

यदि आपकी एमपी 3 फ़ाइलों को डिफ़ॉल्ट प्रारूप के साथ नामित किया गया था %(title)s-%(id)s.%(ext)s, तो आप इस तरह downloaded.txtसे %(id)sएक bash टर्मिनल में youtube से बनाकर redownload से बच सकते थे :

for n in *.mp3
do if [[ "$n" =~ -[-_0-9a-zA-Z]{11}.mp3$ ]]
   then echo "youtube ${n: -15: 11}" >> downloaded.txt
   fi
done

1
यहाँ मूल्यवान जवाब। यह मेरी समस्या का समाधान करता है। धन्यवाद।
वारियर

-cwixयहाँ क्या है ?
बिएटो

2
-cwixके लिए एक छोटा विकल्प है--continue --no-overwrites --ignore-errors --extract-audio
मार्टिन थॉर्नटन

1
यह ध्यान देने योग्य है कि जब यह YouTube के लिए पूरी तरह से काम करता है, तो youtube-dl अन्य साइटों (जैसे साउंडक्लाउड) के साथ भी काम करता है, जहां -xविकल्प आउटपुट को तोड़ने के लिए लगता है। यदि आप ऑडियो स्रोत से डाउनलोड कर रहे हैं तो आप उस ध्वज को सुरक्षित रूप से निकाल सकते हैं।
क्रिश्चियनबॉडी

2

यह वास्तव में मददगार है। अगर यह किसी के लिए किसी भी काम का है, तो मैंने फ़ोल्डर में सभी फ़ाइलों को शामिल करने के लिए मौजूदा डाउनलोड सूची बनाने के लिए कोड को संशोधित किया है। अगर ऑडियो को झंडे --extract-audioऔर --audio-quality "best"झंडे के साथ डाउनलोड करने में उपयोगी है

for n in *.*
do if [[ "$n" =~ -[-_0-9a-zA-Z]{11}.*$ ]]
   then echo "youtube ${n: -15: 11}" >> downloaded.txt
   fi
done

मुझे यकीन है कि ज्यादातर लोग अपने लिए काम कर सकते थे, लेकिन हर कोई बैश स्क्रिप्टिंग से जुड़ा हुआ नहीं था।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.