我在 ytdl-core 包上收到 404 错误

Posted

技术标签:

【中文标题】我在 ytdl-core 包上收到 404 错误【英文标题】:I am getting 404 error on ytdl-core package 【发布时间】:2021-09-07 01:39:28 【问题描述】:

当我尝试在 ytdl-core 中从 YouTube 提取音乐时,我在控制台上收到 404 错误。此错误来自 miniget 包。 ytdl-core 正在使用 miniget。

代码:

ytdl("https://www.youtube.com/watch?v=" + stream.id);

控制台:

(node:16438) UnhandledPromiseRejectionWarning: Error: Status code: 404
    at ClientRequest.<anonymous> (/rbd/pnpm-volume/59a3a74b-3917-4637-83d3-08984c5b8ec9/node_modules/.registry.npmjs.org/miniget/4.2.1/node_modules/miniget/dist/index.js:210:27)
    at Object.onceWrapper (events.js:284:20)
    at ClientRequest.emit (events.js:196:13)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:565:23)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:116:17)
    at TLSSocket.socketOnData (_http_client.js:452:22)
    at TLSSocket.emit (events.js:196:13)
    at addChunk (_stream_readable.js:290:12)
    at readableAddChunk (_stream_readable.js:271:11)
    at TLSSocket.Readable.push (_stream_readable.js:226:10)
(node:16438) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)

如何解决?

【问题讨论】:

据我所知,404是用来表示“Not Found”错误的,可能是stream.id添加到"https://www.youtube.com/watch?v="后形成的URL不会导致一个有效的youtube视频。跨度> 【参考方案1】:

https://github.com/fent/node-ytdl-core/issues/939#issuecomment-866241199

据我所知,Youtube 更新了 API,ytdl 需要更新才能使用它。

【讨论】:

以上是关于我在 ytdl-core 包上收到 404 错误的主要内容,如果未能解决你的问题,请参考以下文章

Silex 帮助。谁能解释为啥我在这里收到 404 错误?

为啥我在 Maven 动态 Web 模块中收到此 404 错误?

为啥我在运行动态 Web 项目时收到 HTTP 404 错误? [复制]

当我发送 POST 请求时,我在 AXON SAGA 实施中收到 404 错误。可能是啥原因? [关闭]

为啥我在使用 Google Clas-s-room API 时会收到 404 错误?

为啥我在 ASP.Net 中的cropper.js 文件上收到 404 错误,尽管它们正是程序正在寻找它们的位置?