Youtube-dl 错误:int() 的文字无效,基数为 10:"7766645.83333"



>我正在尝试从 .mpd 文件下载视频,但收到以下错误:

ValueError: invalid literal for int() with base 10: '7766645.83333'

当我查看 .mpd 文件时,它有这些<S>元素,其中一些包含浮点数。

<S t="636000000" d="6000000"/>
<S t="642000000" d="6000000"/>
<S t="648000000" d="7766645.83333"/>

该程序似乎存在d浮点数的问题。但是,如果段显示如下:

<SegmentURL media="segment-1.m4s"/>
<SegmentURL media="segment-2.m4s"/>
<SegmentURL media="segment-3.m4s"/>

那么就没有问题了。有解决方法吗?有没有办法将此.mpd文件转换为youtube-dl可以处理的格式。我目前正在使用2018.06.25版本的youtube-dl。

发生错误时读取回溯。您会注意到它将您指向源代码/usr/lib/python3.6/site-packages/youtube_dl/extractor/common.py或类似的东西。当你打开那个文件:行时,你会看到类似

't': int(s.get('t', 0)),
# @d is mandatory (see [1, 5.3.9.6.2, Table 17, page 60])
'd': int(s.attrib['d']),
'r': r,

将 2int更改为float似乎可以暂时解决问题。

相关内容

  • 没有找到相关文章

最新更新