def local_sub(self, filename, mimetype):
"""serve a local subtitle file"""
if os.path.isfile(filename):
filename = os.path.abspath(filename)
else:
return None
webserver_ip =[(s.connect(('8.8.8.8', 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]
req_handler = local_server.SubtitleRequestHandler
# create a webserver to handle a single request on a free port or a specific port if passed in the parameter
port = 0
self.subtitleserver = http.server.HTTPServer((webserver_ip, port), req_handler)
self.subtitlethread = threading.Thread(target=self.subtitleserver.handle_request)
self.subtitlethread.start()
url = "http://%s:%s%s" % (webserver_ip, str(self.subtitleserver.server_port), quote_plus(filename, "/"))
return url
评论列表
文章目录