Youtube-dl ('sig error') का उपयोग करके वीडियो डाउनलोड करने में असमर्थ, कैसे सही करें?


12

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

$ youtube-dl https://www.youtube.com/watch?v=bFew8mgQJ9o
[youtube] Setting language
[youtube] bFew8mgQJ9o: Downloading video webpage
[youtube] bFew8mgQJ9o: Downloading video info webpage
[youtube] bFew8mgQJ9o: Extracting video information
Traceback (most recent call last):
  File "/usr/bin/youtube-dl", line 4645, in <module>
    main()
  File "/usr/bin/youtube-dl", line 4636, in main
    _real_main()
  File "/usr/bin/youtube-dl", line 4620, in _real_main
    retcode = fd.download(all_urls)
  File "/usr/bin/youtube-dl", line 869, in download
    ie.extract(url)
  File "/usr/bin/youtube-dl", line 1135, in extract
    return self._real_extract(url)
  File "/usr/bin/youtube-dl", line 1406, in _real_extract
    url_map = dict((ud['itag'][0], ud['url'][0] + '&signature=' + ud['sig'][0]) for ud in url_data)
  File "/usr/bin/youtube-dl", line 1406, in <genexpr>
    url_map = dict((ud['itag'][0], ud['url'][0] + '&signature=' + ud['sig'][0]) for ud in url_data)
KeyError: 'sig'

क्या चल रहा है?


क्या आप एक प्रॉक्सी के पीछे हैं?
जॉबिन

हाँ, वह जो उस संस्थान से संबंधित है जहाँ मैं अध्ययन कर रहा हूँ और इंटरनेट का उपयोग कर रहा हूँ।
कर्नेल_पैनिक

क्या उत्तर सहायक था?
जॉब

जवाबों:


20

ठीक वैसी ही समस्या थी।

अपडेट किया गया youtube-dl इसके माध्यम से:

sudo youtube-dl -U

सुडोल के माध्यम से youtube-dl चलाएं

sudo youtube-dl और यह सूचित करेगा कि उन्होंने वितरण को बदल दिया है और अपडेट करने की आवश्यकता है। प्रेस दर्ज करें और आपको जाने के लिए अच्छा होना चाहिए।


1

youtube-dlयूट्यूब से वीडियो डाउनलोड करने के लिए उपयोग करने से पहले आपको अपनी प्रॉक्सी सेटिंग्स को निर्यात करना होगा । ऐसा करने के लिए, प्रॉक्सी सेटिंग्स का उपयोग करके निर्यात करें:

export http_proxy=http://username:password@host:port_no/
export https_proxy=https://username:password@host:port_no/
export HTTP_PROXY=http://username:password@host:port_no/
export HTTPS_PROXY=https://username:password@host:port_no/

अपने संबंधित चर के साथ उपयोगकर्ता नाम, पासवर्ड, होस्ट और port_no बदलें । अपने HTML कोड के साथ अपने उपयोगकर्ता नाम या पासवर्ड में किसी विशेष वर्ण, यदि कोई हो, को प्रतिस्थापित करना याद रखें। यदि आपके पास एक नहीं है तो उपयोगकर्ता नाम और पासवर्ड को अनदेखा करें:

export HTTP_PROXY=http://host:port_no/

आदि।

पूर्व के लिए:

export HTTP_PROXY=http://123431212:mypassword@192.168.1.2:3128/

~/.bashrcभविष्य के सत्रों के लिए उन्हें बार-बार लिखने से बचने के लिए आप इसे अपनी फ़ाइल पर भी लिख सकते हैं ।

ऐसा करने के बाद वीडियो डाउनलोड करने का प्रयास करें।


1

जब मैंने अन्य उत्तर में संकेत के अनुसार सुडो के साथ अपग्रेड करने की कोशिश की:

sudo youtube-dl -U

मुझे एक संदेश मिला जिसमें कहा गया था कि youtube-dl एक पैकेज मैनेजर का उपयोग करके स्थापित किया गया था और मुझे इसे अपग्रेड करने के लिए उसी का उपयोग करना चाहिए। लेकिन मैं पहले ही कर चुका था

sudo easy_install -U youtube-dl

अंत में, बस इसे चलाने के लिए सुडो का उपयोग किया।

sudo youtube-dl

-1

स्थापित youtube-dlके साथ sudo apt-get install youtube-dlकमांड लाइन से, तो का उपयोग करें:

sudo youtube-dl "https://www.youtube.com/watch?v=bFew8mgQJ9o"

सुनिश्चित करें, कि आप sudoउपरोक्त आदेश से पहले उपयोग करते हैं!

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