youtube-dl 또는 annie를 사용하여 Bilibili에서 비디오를 다운로드할 수 없습니다

youtube-dl 또는 annie를 사용하여 Bilibili에서 비디오를 다운로드할 수 없습니다

그래서 애니를 이용해서 Bilibili에서 영상을 다운받으려고 했는데요. 원래는 youtube-dl을 선택했는데 아쉽게도 Bilibili 웹사이트를 지원하지 않는 것 같아서 대신 annie를 선택했습니다.레딧 사용자 하지만 그럼에도 불구하고 나는 애니를 사용할 행운이 없는 것 같습니다. 이것이 Bilibili가 메커니즘을 업데이트했기 때문인지 아니면 내가 어딘가에서 실수를 했는지 궁금합니다. 이것이 코드입니다.

apple@apples-MacBook-Pro ~ % annie "https://www.bilibili.com/s/video/BV1TD4y1R7k2"
Downloading https://www.bilibili.com/s/video/BV1TD4y1R7k2 error:
this page has no playlist
apple@apples-MacBook-Pro ~ % 

또한 youtube-dl은 지원한다고 주장합니다.빌리빌리그리고 얼마 전 youtube-dl을 사용하여 Bilibili의 비디오를 다운로드했던 기억이 납니다. 그래서 무슨 일이 일어났나요? Bilibili가 코드 등을 업데이트했나요?

apple@apples-MacBook-Pro ~ % youtube-dl "https://www.bilibili.com/video/av90163846?p=1"
[BiliBili] 90163846: Downloading webpage
[BiliBili] 90163846: Downloading video info page
WARNING: Unable to download JSON metadata: HTTP Error 412: Precondition Failed
[BiliBili] 90163846: Downloading video info page
ERROR: Unable to download JSON metadata: HTTP Error 412: Precondition Failed (caused by 
HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using 
the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the -- 
verbose flag and include its complete output.
apple@apples-MacBook-Pro ~ % 

편집: 도움이 되었다면 디버그 로그가 여기에 있습니다.

 apple@192 ~ % youtube-dl -v "https://bilibili.com/video/BV1TD4y1R7k2"         
[debug] System config: [u'--format', u'mp4', u'-o', u'~/Desktop/%(title)s.%(ext)s', u'--write-sub', u'--embed-subs']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'https://bilibili.com/video/BV1TD4y1R7k2']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2021.03.14
[debug] Python version 2.7.16 (CPython) - Darwin-20.3.0-x86_64-i386-64bit
[debug] exe versions: ffmpeg 4.3.1, ffprobe 4.3.1, rtmpdump 2.4
[debug] Proxy map: {}
[BiliBili] 1TD4y1R7k2: Downloading webpage
[BiliBili] 1TD4y1R7k2: Downloading video info page
ERROR: requested format not available
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 806, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 838, in __extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 872, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1675, in process_video_result
    expected=True)
ExtractorError: requested format not available

apple@192 ~ % 

답변1

이 문제를 해결하려면 다음 두 가지 작업을 수행해야 합니다.

  1. youtube-dl의 현재 버전으로 업그레이드하세요. Bilibili 추출기는 2021년 3월 8일에 마지막으로 변경되었으며 이전 버전으로 테스트했을 때 작동하지 않았습니다.
  2. https://www.bilibili.com/video/BV1TD4y1R7k2youtube-dl의 입력으로 보이는 Bilibili URL을 사용하십시오 . 첫 번째 예처럼 Bilibili URL을 사용하지 마세요./에스/그 안에. 따라서 대신에 다음 https://www.bilibili.com/s/video/BV1TD4y1R7k2을 사용해야 합니다.https://www.bilibili.com/video/BV1TD4y1R7k2

답변2

명령에 다음을 추가하십시오

--add-header 승인:'/'

관련 정보