(Stackoverflow中也提供了相同的问题。但这对我没用,因为它使用了其他功能)
您好,我正在尝试使用Python实现Opensubtitle API。我更喜欢尝试使用哈希来搜索字幕文件,因为它准确无误。
由于我之前从未使用过xmlrpc而且使用API很新,所以我必须学习才能使它工作。但我最后一点陷入困境。我的程序返回状态200(确定),但数据'数组是空白的。我想,我正在做错误的参与者传递的东西。代码在这里:
from xmlrpclib import ServerProxy
import hashCheck, os
server = 'http://api.opensubtitles.org/xml-rpc'
class MainEngine(object):
def __init__(self, language="None"):
self.rpc = ServerProxy(server, allow_none=True)
user_agent = 'OSTestUserAgentTemp'
self.Start()
def getToken(self):
self.logindata = self.rpc.LogIn(None, None, "en", "OSTestUserAgentTemp")
self.Token = self.logindata["token"]
return self.Token
def subSearch(self, path):
self.hash = hashCheck.hash(self.path)
token = self.getToken()
self.param = [
token, # token
[
'eng', # sublanguageid
self.hash, #hash
os.path.getsize(path), # byte size
]
]
Obj = self.rpc.SearchSubtitles(token, self.param)
print Obj
def Start(self):
# print server
self.path = "E:\Movies\English\Captain Phillips\Captain Phillips.mp4"
self.subSearch(self.path)
def main():
MainEngine()
if __name__ == '__main__':
main()