मैंने डाउनलोड कर लिया है youtube-dl
और वीडियो डाउनलोड पूरा हो गया है, लेकिन जब मैं वीडियो खोजता हूं, तो मैं इसे ढूंढ नहीं पाता।
क्या कोई मदद कर सकता है?
मैंने डाउनलोड कर लिया है youtube-dl
और वीडियो डाउनलोड पूरा हो गया है, लेकिन जब मैं वीडियो खोजता हूं, तो मैं इसे ढूंढ नहीं पाता।
क्या कोई मदद कर सकता है?
जवाबों:
यहाँ वास्तव में दो प्रश्न हैं:
1. क्यों डैश में youtube-dl की सुविधा नहीं है?
ऐसा इसलिए है क्योंकि यह youtube-dl
केवल टर्मिनल विंडो से चलाया जाता है और आइकन, डेस्कटॉप फाइल और लाइक के साथ नहीं आता है। यह केवल किसी भी टर्मिनल विंडो से निम्नानुसार चलाया जाता है:
youtube-dl [options] url [url...]
कमांड लाइन विकल्पों का विवरण निम्नलिखित कमांड चलाकर आसानी से देखा जा सकता है:
youtube-dl -h
youtube-dl
अपनी इच्छानुसार काम करने के लिए थोड़ा प्रयोग करें ।
2. Youtube-dl YouTube फ़ाइलों को कहाँ से डाउनलोड करता है?
डिफ़ॉल्ट रूप youtube-dl
से आपके द्वारा खोले गए टर्मिनल की वर्तमान कार्यशील निर्देशिका में फ़ाइलों को डाउनलोड करेगा । आमतौर पर यह आपका $HOME
वातावरण है, लेकिन हमेशा नहीं। इस व्यवहार को दो तरीकों से संशोधित किया जा सकता है:
मैन्युअल रूप से डाउनलोड की गई फ़ाइलों के लिए एक स्थान देने के youtube-dl
लिए -o विकल्प का उपयोग करें :
youtube-dl -o "~/Desktop/%(title)s.%(ext)s" 'youtube file url'
और निश्चित रूप से 'youtube फ़ाइल url' के लिए अपने वास्तविक url को प्रतिस्थापित करें । यह उदाहरण आपके डेस्कटॉप पर पूरा डाउनलोड भेजता है।
youtube-dl
निम्नानुसार एक कॉन्फ़िगरेशन फ़ाइल बनाएं :
touch ~/.config/youtube-dl.conf
फिर इस फ़ाइल में एक डिफ़ॉल्ट डाउनलोड स्थान सेट करें:
--output "~/Desktop/%(title)s.%(ext)s"
इसके साथ ही सभी डाउनलोड की गई फाइलें अपने आप आपके डेस्कटॉप पर चली जाएंगी ।
संदर्भ:
sh: 1: Syntax error: "(" unexpected
डिफ़ॉल्ट रूप से youtube-dl फ़ाइलों को उसी निर्देशिका में डाउनलोड करता है जहाँ से आप कमांड चलाते हैं। ज्यादातर यह आपके घर निर्देशिका है। यदि आपका नाम टॉम है, तो यह / घर / टॉम है। इसे कहीं और डाउनलोड करने के लिए मजबूर करने के लिए आपको -o विकल्प का उपयोग करना चाहिए; और वीडियो की गुणवत्ता का चयन करने के लिए, -f विकल्प है। लेकिन आप फाइलों की गुणवत्ता की विविधता को कैसे जान पाएंगे। यह -F विकल्प द्वारा हासिल किया गया है। तो इन सभी को एक शेल स्क्रिप्ट में संयोजित करें, इसे निष्पादन योग्य बनाएं और इसे बिन निर्देशिका में डालें। और जिंदगी आसान हो जाती है।
मैंने अपने स्वयं के उपयोग के लिए एक स्क्रिप्ट लिखी है। यह बढ़िया काम करता है। आपको चिंता करने की ज़रूरत नहीं है कि सभी डाउनलोड की गई फ़ाइलें कहाँ जा रही हैं। मैंने YT वीडियो डाउनलोड करने के लिए ~ / वीडियो निर्देशिका चुनी है; आप किसी अन्य को चुन सकते हैं। अपने नाम से 'टॉम' को भी बदलें। यहाँ स्क्रिप्ट है:
#!/bin/sh
answer=""
tput clear
tput cup 05 10
echo "Give the YouTube URL: \c"
# Here you paste the YT-video-URL by ctrl+shift+V
read answer
# The follwing command will display a list of video quality options to choose from
youtube-dl -F $answer
echo
# Here you give the number shown in first column as per your choice
echo "Select Quality (Choose a number): \c"
read qual
# If you don't want to download and quit the shell, give 99
if [ $qual -ne 99 ]
then
youtube-dl -f $qual -o "/home/Tom/Videos/%(title)s.%(ext)s" $answer
else
exit 0
fi
यदि आप youtube-dl
इस तरह से चलते हैं:
youtube-dl -o "/home/vasa1/Downloads/%(title)s" http://www.youtube.com/watch?v=rnvK2TIhYns
वीडियो में होना चाहिए /home/vasa1/Downloads
। बेशक आपको इसके स्थान पर अपना उपयोगकर्ता नाम डालना होगा vasa1
।
आधिकारिक स्थापना प्रक्रिया का Ubuntu 14 फिक्स
यहाँ निर्देशिका बनाएँ:
sudo mkdir /opt/youtube-dl
स्थापना स्थान से youtube-dl को स्थानांतरित करें:
sudo mv /usr/local/bin/youtube-dl /opt/youtube-dl
सिमलिंक बनाएं:
pushd /usr/local/bin/ && sudo ln -s /opt/youtube-dl/youtube-dl
टेस्ट सिम्कलिन:
ls -la youtube-dl
lrwxrwxrwx 1 root root 26 Oct 16 20:41 youtube-dl -> /opt/youtube-dl/youtube-dl
popd
परीक्षण फ़ाइल:
ls -la /opt/youtube-dl/youtube-dl
-rwxrwxrwx 1 root root 639567 Oct 15 12:42 /opt/youtube-dl/youtube-dl
निश्चित अनुमतियाँ:
sudo chmod 755 /opt/youtube-dl/youtube-dl
पुरानी कैश निकालें:
sudo rm -r /home/<user>/.cache/youtube-dl/
e'voila! इसके सामने एक sudo की आवश्यकता के बिना youtube-dl
यदि आप youtube-dl
अजगर स्क्रिप्ट में भागना चाहते हैं , तो बस उपयोग -o
का कोई प्रभाव नहीं पड़ेगा।
इसके बजाय आपको outtmpl
कीवर्ड का उपयोग करने की आवश्यकता है , उदाहरण के लिए:
youtube_dl.YoutubeDL( params={'-c': '', '--no-mtime': '', 'outtmpl': './%(uploader)s/%(title)s-%(upload_date)s-%(id)s.%(ext)s'} ).download([url])