我正在使用Python中的OpenSubtitle API创建下载电影字幕的软件。Python:如何通过xml-rpc从文件块中获取数据
该API实现XML-RPC协议。据API documentation,下载从站点数据库字幕,则使用下面的方法:
array DownloadSubtitles($token, array($IDSubtitleFile, $IDSubtitleFile,...))
它的输出是:
[data] => Array
(
[0] => Array
(
[idsubtitlefile] => 10
[data] => MQ0KMDA6MDA6MzgsMzAwIC0tPiAwMDowMDo0MSwwMDA...
)
[1] => Array
(
[idsubtitlefile] => 20
[data] => MQ0KMDA6MDA6MjYsMjgzIC0tPiAwMD...
)
其中[idsubtitlefile]是subtitle_id和[数据]是字幕字节在base64和gzip格式。
我现在面临的问题是,每当我下载的字幕:
idsubtitlefile='513de0ea27d63b9d631d769a492d72dc'
token='a1t49trievitmjda4ija7dif44'
xmlrpclib.DownloadSubtitles(token,[(idsubtitlefile)])
我得到这样一个结果:
[{'data': 'H4sIAAAAAAAAAwMAAAAAAAAAAAA=',\
'idsubtitlefile':'513de0ea27d63b9d631d769a492d72dc'}]
这里,data
值应该是base64编码的二进制字幕数据,但如何才能将这么少的数据作为副标题。
我想某种程度上数据必须从服务器下载块,或者我错过了一些东西。
您收到的回应基本上是一个压缩的空文件。我不希望有任何更多的块,从您收到的回复和API文档。 –