youtube-dl gagal mengekstrak tanda tangan

42

Dianggap sangat bermanfaat untuk menggunakan youtube-dlperangkat lunak untuk mengunduh YouTube.

Sebuah pesan terlihat dan berhenti berfungsi, yang mengikuti.

ERROR: Signature extraction failed: Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 479, in _decrypt_signature
    video_id, player_url, s
  File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 383, in _extract_signature_function
    res = self._parse_sig_js(code)
  File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 454, in _parse_sig_js
    u'Initial JS player signature function name')
  File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 391, in _search_regex
    raise RegexNotFoundError(u'Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type  youtube-dl -U  to update.
; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type  youtube-dl -U  to update.

Apa yang harus saya lakukan untuk melanjutkan?

Ohmygirl
sumber
1
Ini dengan jelas menyatakan dalam pesan: "tolong laporkan masalah ini di yt-dl.org/bug " Jadi mengapa tidak melakukannya?
Rinzwind
3
Make sure you are using the latest version; type youtube-dl -U to update.Apakah kamu melakukan itu?
David Foerster
Dear David Foerster, saya mencoba dan mendapat pesan 'Sepertinya Anda menginstal youtube-dl dengan manajer paket, pip, setup.py atau tarball. Silakan gunakan itu untuk memperbarui. '
Ohmygirl
@HELLOVENUS Anda benar youtube-dl -Utidak bekerja lagi. Petunjuk untuk memperbarui youtube-dl ke versi terbaru ada di: youtube-dl tidak berfungsi . btw juga berfungsi jika Anda menggunakan pip install --upgrade youtube-dlalih-alih pip install --upgrade youtube_dldan juga berfungsi untuk pemasangan lokal (yaitu tanpa menggunakan sudo) yang dilakukan di dalam lingkungan virtual Python.
karel

Jawaban:

66

Anda mendapatkan kesalahan ini:

Unable to extract Initial JS player signature function name

... karena youtube-dl tidak mutakhir. Google telah mengubah cara untuk mengakses video YouTube lebih sering sekarang daripada yang terjadi beberapa tahun yang lalu, jadi untuk menjaga agar youtube-dl tetap mutakhir, itu harus diperbarui lebih sering juga. Untuk menginstal versi terbaru dari youtube-dl buka terminal dan ketik:

sudo apt remove youtube-dl  
sudo apt install python-pip
pip install --user youtube-dl

Untuk meningkatkan youtube-dl ke versi terbaru:

sudo pip install --upgrade youtube-dl  

atau

sudo snap install youtube-dl # start with snap run youtube-dl     

Sangat gila seberapa sering Google telah mengubah kode untuk mengakses video di YouTube. Saya sepertinya ingat memperbarui youtube-dl hanya beberapa bulan yang lalu, tetapi masih tidak dapat mengunduh video yang dipilih sampai saya memperbaruinya.

youtube-dl adalah program Python, jadi Anda juga dapat menginstal versi lokal youtube-dl secara lokal di lingkungan virtual Python. Untuk informasi tentang cara mengatur dan menggunakan lingkungan virtual Python, lihat Bagaimana mengatur dan menggunakan lingkungan python virtual di Ubuntu? .

karel
sumber
Tidak bekerja untuk saya :-(
Philippe Gachoud
2
Bagi saya, saya harus menghapus dulu "sudo apt-get remove youtube-dl" dan kemudian gunakan perintah untuk menginstal dengan pip
Diego Andrés Díaz Espinoza
4

Satu - satunya cara saya untuk membuatnya berfungsi adalah versi terbaru (untuk saya di debian) dengan

sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+x /usr/local/bin/youtube-dl
hash -r

dari repo github

Philippe Gachoud
sumber
3

Itu pernah terjadi pada saya. Seperti yang mereka katakan di komentar Anda harus memperbarui sistem Anda atau hanya youtube-dl. Juga gunakan kutipan yang baik sebagai berikut dalam contoh ini:

youtube-dl "https://www.youtube.com/watch?v=n6AL-WpgoFw"
E_Angel
sumber
Karakter ini yang ¨Anda gunakan dalam posting Anda tidak terlihat. ganti dengan 'atau ".
afzalex
bekerja untuk saya;)
Prateek Joshi
2

Saya memiliki masalah yang sama dan ini menyelesaikannya

 sudo -H pip install --upgrade youtube-dl

dan coba masukkan tautan ke " link"

Sami Switch
sumber
1

Hanya cara ini yang bekerja untuk saya!

Ketika saya melakukan perjalanan setiap kali saya mengambil musik baru, dan di sini adalah cara menginstal youtube-dl dari pip.

Jika Anda menginstalnya dari repo, itu tidak dapat mengunduh musik, selalu mengeluh ! Jadi gunakan ini untuk mengunduh spongebob masterpe santai:

!pip install --upgrade youtube-dl 
!youtube-dl -x --audio-format mp3 https://www.youtube.com/watch?v=oq526_37wc0
prosti
sumber
0

Tidak satu pun dari jawaban ini yang berhasil untuk saya. Saya mendapatkan pekerjaan ini dengan menggunakan instruksi yang diberikan dalam kesalahan: -

sudo youtube-dl -U

Saya tidak tahu alasan pasti mengapa cara pembaruan ini bekerja dan bukankah perintah upgrade itu ..

Vicrobot
sumber
sudo youtube-dl -Utidak bekerja di Ubuntu 18.04. Itu memberi hasil ini: sudo youtube-dl -U Usage: youtube-dl [OPTIONS] URL [URL...] youtube-dl: error: youtube-dl's self-update mechanism is disabled on Debian. Please update youtube-dl using apt(8). See https://packages.debian.org/sid/youtube-dl for the latest packaged version.namun sudo snap install youtube-dl-caseptberhasil pada 18,04.
karel