ইউটিউব-ডিএল দিয়ে একাধিক ফাইল ডাউনলোড করা হচ্ছে


45

ইউটিউব থেকে ফাইল ডাউনলোড করতে আমি ইউটিউব-ডিএল ব্যবহার করি। আমি একাধিক ফাইল ডাউনলোড করার চেষ্টা করেছি, তবে এটি আমার পক্ষে কার্যকর হচ্ছে না। আমাকে একবার ভিডিও ডাউনলোড করতে চাইলে একাধিক টার্মিনাল খুলতে হবে এবং নতুন করে শুরু করতে হবে।

আপনি একবারে সমস্ত URL গুলি উল্লেখ করে একক টার্মিনাল উইন্ডো দিয়ে একাধিক ফাইল ডাউনলোড করতে আমাকে সহায়তা করতে পারেন? আমি উবুন্টু 12.04 64-বিট ব্যবহার করি।


1
আপনার প্রশ্নের উত্তর নয় তবে অন্যরা এতে হোঁচট খেতে পারে। ভিডিওগুলি যদি কোনওভাবে সম্পর্কিত হয় তবে মনে রাখবেন যে ইউটিউব-ডিএল একটি প্লেলিস্ট, ব্যবহারকারী বা চ্যানেল থেকে সমস্ত ভিডিও ডাউনলোড করতে পারে।
ডেনিস

নীচের উত্তরটি দেখুন (বর্তমানে সর্বাধিক উত্সাহিত নয়) ইউআরএল এবং আপনার কাজ শেষ হয়ে যাওয়ার মধ্যে কেবল একটি স্থান যুক্ত করার পরামর্শ দিচ্ছে।
Göta

উত্তর:


54

শর্টকাট

সমস্ত ভিডিও যদি একই প্লেলিস্ট বা একই চ্যানেলে থাকে তবে আপনি নিম্নলিখিত শর্টকাটগুলি ব্যবহার করে সময় বাঁচাতে পারবেন।

প্লেলিস্ট

youtube-dl -f FORMAT -ciw -o "%(title)s.%(ext)s" -v <url-of-playlist>

... যেখানে <url-of-playlist>প্লেলিস্টের ইউআরএল দ্বারা প্রতিস্থাপন করা হয় এবং FORMATকোনও উপলভ্য ভিডিও ফর্ম্যাট দিয়ে প্রতিস্থাপন করা হয়, উদাহরণস্বরূপ 18। আপনি -Fএই জাতীয় বৈধ বিন্যাসগুলি দেখতে বিকল্পটি ব্যবহার করতে পারেন :

youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'

ব্যাচের শুরু থেকে ব্যাচের শেষ পর্যন্ত প্লেলিস্টের অংশটি ডাউনলোড করুন

youtube-dl -f FORMAT -ci --playlist-start NUMBER --playlist-end NUMBER <url-of-playlist>  

... যেখানে <url-of-playlist>প্লেলিস্টের ইউআরএল দ্বারা প্রতিস্থাপন করা হয়েছে, যে FORMATকোনও উপলভ্য ভিডিও ফর্ম্যাটটি প্রতিস্থাপন করুন, উদাহরণস্বরূপ 18, এবং NUMBERপ্লেলিস্টে ভিডিওটির ডাউনলোডিং শুরু / শেষ করতে পজিশনের সংখ্যা।

চ্যানেল

youtube-dl -f FORMAT -ciw -o "%(title)s.%(ext)s" -v <url-of-channel>

... যেখানে <url-of-channel>চ্যানেলের ইউআরএল দ্বারা প্রতিস্থাপন করা হয় এবং FORMATকোনও উপলভ্য ভিডিও ফর্ম্যাট দিয়ে প্রতিস্থাপন করা হয়, উদাহরণস্বরূপ 18

ভিডিওগুলি একই প্লেলিস্ট বা চ্যানেলে নেই

প্রথমে এমন একটি ব্যাচ ফাইল তৈরি করুন যা আপনি ডাউনলোড করতে চান এমন ইউটিউব থেকে ভিডিওগুলির ইউআরএলগুলির একটি তালিকা সহ একটি পাঠ্য ফাইল। তালিকার প্রতিটি ইউআরএলটির জন্য একটি নতুন লাইন সহ কেবলমাত্র একটি ইউআরএল এবং প্রতিটি লাইনে অন্য কিছু না থাকা তালিকায় ইউআরএলগুলি সাজানো উচিত। ব্যাচ-ফাইল.txt এর মতো মনে রাখা সহজ এমন একটি নাম দিয়ে ব্যাচ ফাইলটি সংরক্ষণ করুন। যদি ইউটিউবে একাধিক ফাইল একই প্লেলিস্ট, চ্যানেল বা ব্যবহারকারী ওয়েবপৃষ্ঠায় থাকে তবে আপনি নিম্নলিখিত কমান্ডটি চালিয়ে সেই পৃষ্ঠায় সমস্ত লিঙ্কযুক্ত একটি তালিকা সহ একটি পাঠ্য ফাইল তৈরি করতে পারেন:

sudo apt install jq  
youtube-dl -j --flat-playlist "https://<yourYoutubeWebpage>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt

টার্মিনাল রান থেকে:

youtube-dl -ct --simulate --batch-file='/path/to/batch-file.txt'

এটি হ'ল বেসিক কমান্ড, তবে আপনাকে যে ভিডিওগুলি ডাউনলোড করতে চান তার ফর্ম্যাটগুলি যুক্ত করতে হবে অন্যথায় আপনি নিজের পছন্দ মতো ফর্ম্যাট দিয়ে ভিডিও ডাউনলোড করতে পারেন। আপনি যে ফর্ম্যাটটি চান তা উপলভ্য কিনা তা দেখতে প্রথমে আপনার ডাউনলোডের অনুকরণ করুন:

youtube-dl -ct -f 34 --simulate 'http://www.youtube.com/some-alphanumeric-string'

ভিডিও ফরম্যাট না পাওয়া যায় তাহলে আপনি যে বলছেন একটি ত্রুটির বার্তা পাবেন: requested format not available। ভিডিও ফর্ম্যাটটি উপলভ্য থাকলে আপনি --simulateবিকল্পটি ব্যবহার করার সময় কোনও ত্রুটি বার্তা পাবেন না । আপনি এই জাতীয় বৈধ বিন্যাসগুলি দেখতে -F বিকল্পটি যুক্ত করতে পারেন:

youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'

তৃতীয় কমান্ড আমি সাধারণ FLV 360p ভিডিও ফরম্যাট ব্যবহার করেছেন:
-f 34। আপনি সম্ভবত flv 480p ভিডিও ফর্ম্যাট ব্যবহার করে দেখতে পছন্দ করতে পারেন -f 35। সুতরাং আপনি কমান্ডটিতে যে ভিডিও ফর্ম্যাটটি যুক্ত করতে চান তা যুক্ত করার পরে, কমান্ডটি এমন কিছু হয়:

youtube-dl -ciw -o "%(title)s.%(ext)s" --batch-file='/path/to/batch-file.txt'

নোট:

আমি --simulateশেষ কমান্ডটিতে বিকল্পটি যুক্ত করিনি , সুতরাং এই আদেশটি বাস্তবের জন্য কার্যকর করা হবে।


18

আপনি একের পর এক ইউআরএল রাখতে পারেন, এর মাঝে একটি স্থান রেখে। ইউটিউব-ডিএল সেগুলি ক্রমিকভাবে ডাউনলোড করবে। এটি ব্যাচের ফাইল তৈরির চেয়ে কিছুটা সহজ।

--Help বলেছে লক্ষ্য করুন youtube-dl --help Usage: youtube-dl [options] url [url...]

নমুনা ইনপুট:

youtube-dl http://www.youtube.com/watch?v=fqULJBBEVQE http://www.youtube.com/watch?v=vDbbz-BdyYc http://www.youtube.com/watch?v=OrIFaWJ9Glo

নমুনা আউটপুট:

    [youtube] Setting language
    [youtube] fqULJBBEVQE: Downloading video webpage
    [youtube] fqULJBBEVQE: Downloading video info webpage
    [youtube] fqULJBBEVQE: Extracting video information
    [download] Destination: Web Components - A Tectonic Shift for Web Development - Google I_O 2013-fqULJBBEVQE.mp4
    [download] 100% of 238.14MiB in 36:54
    [youtube] vDbbz-BdyYc: Downloading video webpage
    [youtube] vDbbz-BdyYc: Downloading video info webpage
    [youtube] vDbbz-BdyYc: Extracting video information
    [download] Paul Irish on Web Application Development Workflow-vDbbz-BdyYc.mp4 has already been downloaded
    [youtube] OrIFaWJ9Glo: Downloading video webpage
    [youtube] OrIFaWJ9Glo: Downloading video info webpage
    [youtube] OrIFaWJ9Glo: Extracting video information
    [download] Got server HTTP error. Retrying (attempt 1 of 20)...
    [download] Destination: Single Page Web Applications - JavaScript End-to-End (The Hard Stuff)-OrIFaWJ9Glo.mp4
    [download] 100% of 553.10MiB in 42:17

1
আমার মতে সেরা উত্তর! খুব সহজ!
Göta

5

পদক্ষেপ 1: আপনার ডেস্কটপে যান এবংlist(বা অন্য কোনও নাম)নামক একটি পাঠ্য নথি তৈরি করুন। আপনি যদি ফাইলগুলিতে ফাইল ডাউনলোড করতে চান তবে ইউআরএলগুলি অনুলিপি করুন এবং প্রতি পংক্তিতে একটি ইউআরএল আটকান

পদক্ষেপ 2: টার্মিনাল খুলুন এবং ডেস্কটপে যান

cd Desktop

পদক্ষেপ 3: আপনার তালিকায় ফাইলগুলি ডাউনলোড করতে টাইপ করুন (listসেই অনুযায়ীপ্রতিস্থাপন করুনযদি আপনি নিজের ফাইলটির নাম অন্য কিছু দিয়েছেন)

youtube-dl -a list

একটি ইউটিউব চ্যানেল ডাউনলোড করতে

এই আদেশটি চালান

youtube-dl -citk -format mp4 -yes-playlist VIDEO_PLAYLIST_LINK
  • -c আংশিক ডাউনলোড করা ফাইল পুনরায় শুরু করুন
  • -i কোন ত্রুটি উপেক্ষা করুন।
  • -t ফাইলের নাম হিসাবে ভিডিও শিরোনাম ব্যবহার করুন।
  • -k পোস্ট-প্রসেসিং শেষ হওয়ার পরে ভিডিওটি ডিস্কে রাখুন।
  • --format mp4 ভিডিও ফাইলগুলি এমপি 4 ফাইল হিসাবে সংরক্ষণ করুন।
  • --yes-playlist ইউআরএল যা একটি ভিডিও প্লেলিস্টে পয়েন্ট অনুসরণ করে তা নিশ্চিত করে।

1
-citkখুব বিভ্রান্তিকর, এবং ত্রুটি হতে পারে। -cপুনরায় শুরু করার জন্য বল প্রয়োগ করে, এমনকি যদি এটি বেশি অর্থ না দেয় তবে। ডিফল্ট ইতিমধ্যে অবিরত আছে। -iঠিক আছে, তবে সাবধান থাকুন যে আপনি কিছু ভিডিওতে ত্রুটি মিস করতে পারেন। -tইতোমধ্যে ডিফল্ট, এবং অবমানিত। -kএর সাথে কোন লাভ নেই -f mp4। দেখুন ইউটিউব-DL প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী আরো বিস্তারিত জানার জন্য।
ফিহাগ

3

আপনার যদি একাধিক ভিডিও ইউআরএল থাকে তবে কেবলমাত্র একটি নতুন প্লেলিস্ট তৈরি করে বা একটি বিদ্যমান ব্যবহার করে এটি আপনার প্লেলিস্টে আপনার ইউটিউব প্লেলিস্টে যুক্ত করুন।

তারপরে নীচের কমান্ডটি ব্যবহার করুন।

youtube-dl -f FORMAT --yes-playlist [url-of-playlist]

--yes-playlistইউআরএল যদি একটি ভিডিও এবং প্লেলিস্টকে বোঝায় তবে বিকল্পটি প্লেলিস্টটি ডাউনলোড করবে।

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


এটি একই চ্যানেল থেকে প্রচুর ভিডিও ডাউনলোড করার জন্য দরকারী। এটিকে সর্বজনীন না করার জন্য আপনি একটি তালিকাভুক্ত প্লেলিস্টটি ব্যবহার করতে পারেন
qwr

3

একাধিক ভিডিও ডাউনলোড করতে আপনি এই কাঠামোটি ব্যবহার করতে পারেন। এটি @ কোরাইবের প্রতিক্রিয়ার মতো যা আপনি এটিকে ব্যাশে অন্য কোথাও ব্যবহার করতে পারবেন উদাহরণস্বরূপ প্রতিধ্বনি সহ। এখানে দুটি উপায় রয়েছে:

ধনুর্বন্ধনী

youtube-dl -f FORMAT {url1,url2,url...}

শেষ যুক্তি ব্যতীত শেষ আদেশটি পুনরাবৃত্তি করুন

youtube-dl -f FORMAT url1; !:- url2; !:-url...

3

সর্বাধিক সোজাসুজি সমাধানটি এরকম একটি বাশ স্ক্রিপ্ট তৈরি করা হবে

#!/bin/bash
terminal=`tty`
exec < ~/Documents/youtubevideolinks.txt

while read -r line
do
    cd ~/Desktop/TilakDa/
    youtube-dl -f 18 "$line"
done
exec < "$terminal"

কেবলমাত্র একটি নতুন লাইনে প্রতিটি ভিডিও ইউআরএল দিয়ে ডকুমেন্টস ফোল্ডারে সেই টেক্সট ফাইলটিতে ভিডিও লিঙ্কগুলি অনুলিপি করুন এবং আটকান এবং এই স্ক্রিপ্টটি চালান এটি ডিফল্টরূপে -f 18বিকল্পগুলি 360p ভিডিওর জন্য হবে


1

কমান্ডটি টাইপ করুন এবং তারপরে টাইপ করুন &&এবং পরবর্তী কমান্ডটি টাইপ করুন:

youtube-dl--add-metadata -xic http://(the url) && youtube-dl--add-metadata -xic http://(the url) 

1

ব্যাশ স্ক্রিপ্ট দিয়ে চেষ্টা করুন:

while read LL ; do youtube-dl "$LL" ; done < your_file

1

বিষয় এখনও প্রাসঙ্গিক, তাই:

  • আপনার ইউটিউব লিঙ্ক পান।
  • দিয়ে শুরু হওয়া প্রথম ভিডিও পরামিতি সরান ?
  • এই মত ব্যবহার করুন :-)

    youtube-dl.exe --yes-playlist https://www.youtube.com/watch?list=yourlistlink
    

এটি আমার পক্ষে কাজ করে।

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