diff --git a/napi b/napi index 1d88aee..01323ac 100755 --- a/napi +++ b/napi @@ -22,40 +22,46 @@ import xml.etree.ElementTree as ET import base64 +base_url = "http://napiprojekt.pl/api/api-napiprojekt3.php" +password = "iBlm8NTigvru0Jr0" +input_filename = '/tmp/napi-temp-file' + +language = "PL" + if(len(sys.argv)==1): print "wy*dalaj na stadion po film" sys.exit(2) d = md5.new() -d.update(open(sys.argv[1]).read(10485760)) +movie_filename = sys.argv[1] +d.update(open(movie_filename).read(10485760)) def download_subtitles(digest): request_data = { "downloaded_subtitles_id" : digest, "mode" : "31", "client" : "NapiProjekt", - "downloaded_subtitles_lang" : "PL" + "downloaded_subtitles_lang" : language } try: request_stream = urllib.urlencode(request_data) - request = urllib2.Request("http://napiprojekt.pl/api/api-napiprojekt3.php", request_stream) + request = urllib2.Request(base_url, request_stream) response = urllib2.urlopen(request) xml = ET.XML(response.read()) content = xml.find("subtitles").find("content").text except: print "nie ma napisa do filmu: ", sys.argv[1] sys.exit(2) - location = os.path.dirname(sys.argv[1]) - archivepath = os.path.join(location,"napisy.7z") - open(archivepath,"w").write(base64.b64decode(content)) - nazwa=os.path.join(location,sys.argv[1][:-3]+'txt') + with open(input_filename, "w") as input_file: + input_file.write(base64.b64decode(content)) + nazwa = movie_filename[:-4]+'.srt' - if (os.system("/usr/local/bin/7z x -y -so -piBlm8NTigvru0Jr0 "+archivepath+" 2>/dev/null >\""+nazwa+"\"")): + if (os.system("/usr/local/bin/7z x -y -so -p" + password + " " + input_filename + " 2>/dev/null >\""+nazwa+"\"")): print "nie ma napisa do filmu", sys.argv[1] os.remove(nazwa) else: print "napisy pobrano, milordzie!" - os.remove(archivepath) + os.remove(input_filename) download_subtitles(d.hexdigest())