web-dev-qa-db-ja.com

youtube-dlは署名を抽出できませんでした

youtube-dlソフトウェアを使用してyoutubeをダウンロードすると非常に便利と考えられます。

メッセージが表示され、動作を停止しました。これは次のとおりです。

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.

続行するにはどうすればよいですか?

41
Taeyeon

このエラーが発生しています:

Unable to extract Initial JS player signature function name

... youtube-dlが最新ではないためです。 Googleは数年前よりも頻繁にYouTubeビデオへのアクセス方法を変更しているため、youtube-dlを最新の状態に保つために、より頻繁に更新する必要があります。 youtube-dlの最新バージョンをインストールするには、ターミナルを開いて次を入力します。

Sudo apt install python-pip
Sudo pip install youtube-dl

Youtube-dlを最新バージョンにアップグレードするには:

Sudo pip install --upgrade youtube-dl  

または

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

GoogleがYouTubeのビデオにアクセスするためのコードをどれほど頻繁に変更してきたかはおかしいです。 youtube-dlの更新を数か月前に覚えていたようですが、更新するまで選択したビデオをダウンロードできませんでした。

youtube-dlはPythonプログラムであるため、Python仮想環境にyoutube-dlの最新バージョンをローカルにインストールすることもできます。 Python仮想環境をセットアップして使用する方法については、 buntuで仮想python環境をセットアップして使用する方法 を参照してください。

63
karel

私がそれを動作させる唯一の方法は、(debianの私にとって)最新バージョンでした

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

github repo から

4

それはかつて私に起こりました。彼らがコメントで言ったように、あなたはあなたのシステムを更新するか、単にyoutube-dlをしなければなりません。この例のように引用符を使用することも適切です。

youtube-dl "https://www.youtube.com/watch?v=n6AL-WpgoFw"
3
E_Angel

私は同じ問題を抱えていて、これで解決しました

 Sudo -H pip install --upgrade youtube-dl

リンクを「link」に入れてみてください

2
Sami Switch

この方法だけが私のために働いています!

私が新しい音楽を聴くたびに旅行するとき、ここにyoutube-dlをpipからインストールする方法があります。

リポジトリからインストールした場合、音楽をダウンロードできません常に文句を言う!。したがって、これを使用してスポンジボブリラクシングマスターピースをダウンロードします。

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

これらの答えはどれも私にとってはうまくいきませんでした。エラーで与えられた命令を使用して、このことを動作させました:-

Sudo youtube-dl -U

この更新方法が機能する正確な理由はわかりませんが、そのアップグレードコマンドではありません。

0
Vicrobot