ইউটিউব-ডিএল দিয়ে ইউটিউব প্লেলিস্ট ডাউনলোড করা, বিদ্যমান ফাইলগুলি এড়িয়ে যাওয়া


22

আমি ভাবছিলাম যে youtube-dlইতিমধ্যে বিদ্যমান ফাইলগুলি এড়ানো, এমপি 3 ব্যবহার করে কোনও ইউটিউব প্লেলিস্ট ডাউনলোড করা সম্ভব কিনা ? আমি এই আদেশটি ব্যবহার করছি:

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

এবং, যদিও আমি এটি ওভাররাইট না করার জন্য সেট করেছি, এটি স্ক্র্যাচ থেকে সবকিছু পুনরায় ডাউনলোড করে। এটা কি সম্ভব?


যদিও এটি পুনরায় ডাউনলোড হয়েছে এটি সাধারণত বিকল্প বিকল্পটি ছাড়াই ফাইলটি ডিফল্টরূপে এড়িয়ে যায়
mchid

ঠিক আছে, আমি যদি এমপি 3 ফাইলের সাথে ডাউনলোড করা ভিডিওটি রাখি তবে এড়িয়ে যাওয়া ফাংশনটি সঠিকভাবে কাজ করে। আমার যা প্রয়োজন ঠিক তা নয় তবে এটি ঠিক আছে।
যোদ্ধা

উত্তর:


45

বিকল্পের সাথে --download-archive FILE ইউটিউব-ডিএল উভয়ই আবার ডাউনলোড না করার জন্য ফাইলগুলির তালিকায় পড়ে এবং যুক্ত করে। যতবারই কোনও ফাইল সফলভাবে ডাউনলোড করা হয়, সেই ভিডিও আইডি যুক্ত করা হয় 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ব্যাশ টার্মিনালে তৈরি করে পুনরায় ডাউনলোডগুলি এড়াতে পারতেন :

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
এটি উল্লেখ করার মতো যে এটি ইউটিউবের পক্ষে নিখুঁতভাবে কাজ করে, ইউটিউব-ডিএল অন্যান্য সাইটগুলির সাথেও কাজ করে (উদাহরণস্বরূপ সাউন্ডক্লাউড) যেখানে -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

আমি নিশ্চিত যে বেশিরভাগ লোক নিজেরাই এটি কাজ করতে পারত তবে সকলেই বাশ স্ক্রিপ্টিংয়ের সাথে আঁকড়ে নেই।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.