summaryrefslogtreecommitdiffstats
path: root/module/plugins/OCR.py
diff options
context:
space:
mode:
Diffstat (limited to 'module/plugins/OCR.py')
-rw-r--r--module/plugins/OCR.py23
1 files changed, 13 insertions, 10 deletions
diff --git a/module/plugins/OCR.py b/module/plugins/OCR.py
index 8e60737b6..f309394f5 100644
--- a/module/plugins/OCR.py
+++ b/module/plugins/OCR.py
@@ -4,21 +4,24 @@ from __future__ import with_statement
try:
from PIL import Image, GifImagePlugin, JpegImagePlugin, PngImagePlugin, TiffImagePlugin
+
except ImportError:
import Image, GifImagePlugin, JpegImagePlugin, PngImagePlugin, TiffImagePlugin
import logging
+import os
import subprocess
+#import tempfile
-from os.path import abspath, join
+from module.utils import save_join
class OCR(object):
__name__ = "OCR"
__type__ = "ocr"
- __version__ = "0.10"
+ __version__ = "0.11"
- __description__ = """Base OCR plugin"""
+ __description__ = """OCR base plugin"""
__license__ = "GPLv3"
__authors__ = [("pyLoad Team", "admin@pyload.org")]
@@ -56,11 +59,11 @@ class OCR(object):
def run_tesser(self, subset=False, digits=True, lowercase=True, uppercase=True):
#tmpTif = tempfile.NamedTemporaryFile(suffix=".tif")
try:
- tmpTif = open(join("tmp", "tmpTif_%s.tif" % self.__name__), "wb")
+ tmpTif = open(save_join("tmp", "tmpTif_%s.tif" % self.__name__), "wb")
tmpTif.close()
#tmpTxt = tempfile.NamedTemporaryFile(suffix=".txt")
- tmpTxt = open(join("tmp", "tmpTxt_%s.txt" % self.__name__), "wb")
+ tmpTxt = open(save_join("tmp", "tmpTxt_%s.txt" % self.__name__), "wb")
tmpTxt.close()
except IOError, e:
@@ -71,15 +74,15 @@ class OCR(object):
self.image.save(tmpTif.name, 'TIFF')
if os.name == "nt":
- tessparams = [join(pypath, "tesseract", "tesseract.exe")]
+ tessparams = [os.path.join(pypath, "tesseract", "tesseract.exe")]
else:
- tessparams = ['tesseract']
+ tessparams = ["tesseract"]
- tessparams.extend([abspath(tmpTif.name), abspath(tmpTxt.name).replace(".txt", "")] )
+ tessparams.extend([os.path.abspath(tmpTif.name), os.path.abspath(tmpTxt.name).replace(".txt", "")] )
if subset and (digits or lowercase or uppercase):
#tmpSub = tempfile.NamedTemporaryFile(suffix=".subset")
- with open(join("tmp", "tmpSub_%s.subset" % self.__name__), "wb") as tmpSub:
+ with open(save_join("tmp", "tmpSub_%s.subset" % self.__name__), "wb") as tmpSub:
tmpSub.write("tessedit_char_whitelist ")
if digits:
@@ -91,7 +94,7 @@ class OCR(object):
tmpSub.write("\n")
tessparams.append("nobatch")
- tessparams.append(abspath(tmpSub.name))
+ tessparams.append(os.path.abspath(tmpSub.name))
self.logger.debug("run tesseract")
self.run(tessparams)