>我正在尝试从 .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
似乎可以暂时解决问题。