diff --git a/talon/signature/bruteforce.py b/talon/signature/bruteforce.py index 85e25ce..e502bab 100644 --- a/talon/signature/bruteforce.py +++ b/talon/signature/bruteforce.py @@ -110,7 +110,7 @@ def extract_signature(msg_body): return (stripped_body.strip(), signature.strip()) - except Exception as e: + except Exception: log.exception('ERROR extracting signature') return (msg_body, None) diff --git a/talon/signature/learning/classifier.py b/talon/signature/learning/classifier.py index f775413..9267db0 100644 --- a/talon/signature/learning/classifier.py +++ b/talon/signature/learning/classifier.py @@ -35,11 +35,16 @@ def load(saved_classifier_filename, train_data_filename): try: return joblib.load(saved_classifier_filename) except ValueError: + # load python 2 pickle format with python 3, and save it permissions allowing import sys kwargs = {} if sys.version_info > (3, 0): kwargs["encoding"] = "latin1" loaded = pickle.load(open(saved_classifier_filename, 'rb'), **kwargs) - joblib.dump(loaded, saved_classifier_filename, compress=True) + try: + joblib.dump(loaded, saved_classifier_filename, compress=True) + except Exception: + pass + return joblib.load(saved_classifier_filename)