From 83bdf8d62aceef81d6e81681ea78cc39486fd11d Mon Sep 17 00:00:00 2001 From: Karl Voit Date: Wed, 29 Nov 2017 19:13:18 +0100 Subject: [PATCH] added wav/mp3 recording patterns --- guessfilename.py | 15 ++++++++++++++- guessfilename_test.py | 16 +++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) mode change 100755 => 100644 guessfilename.py diff --git a/guessfilename.py b/guessfilename.py old mode 100755 new mode 100644 index 33ace48..7bf4f29 --- a/guessfilename.py +++ b/guessfilename.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -PROG_VERSION = u"Time-stamp: <2017-11-05 11:58:26 vk>" +PROG_VERSION = u"Time-stamp: <2017-11-29 19:13:06 vk>" # TODO: @@ -158,6 +158,8 @@ class GuessFilename(object): BANKAUSTRIA_BANK_TRANSACTIONS_REGEX = re.compile('^' + DAYTIME_REGEX + '_IKS-(\d{29}).csv$', re.UNICODE) BANKAUSTRIA_BANK_TRANSACTIONS_INDEXGROUPS = [1, ' Bank Austria Umsatzliste IKS-', 4, '.csv'] + RECORDER_REGEX = re.compile('rec_([12]\d{3})([01]\d)([0123]\d)-([012]\d)([012345]\d)(.+)?.(wav|mp3)') + logger = None config = None @@ -506,6 +508,17 @@ class GuessFilename(object): if regex_match: return self.build_string_via_indexgroups(regex_match, self.VID_INDEXGROUPS) + # rec_20171129-0902 A nice recording .wav -> 2017-11-29T09.02 A nice recording.wav + # rec_20171129-0902 A nice recording.wav -> 2017-11-29T09.02 A nice recording.wav + # rec_20171129-0902.wav -> 2017-11-29T09.02.wav + # rec_20171129-0902.mp3 -> 2017-11-29T09.02.mp3 + regex_match = re.match(self.RECORDER_REGEX, oldfilename) + if regex_match: + result = self.build_string_via_indexgroups(regex_match, [1, '-', 2, '-', 3, 'T', 4, '.', 5]) + if regex_match.group(6): + result += ' ' + regex_match.group(6).strip() + return result + '.' + regex_match.group(7) + # 2015-11-24 Rechnung A1 Festnetz-Internet 12,34€ -- scan bill.pdf if self.contains_one_of(oldfilename, [" A1 ", " a1 "]) and self.has_euro_charge(oldfilename) and datetimestr: return datetimestr + \ diff --git a/guessfilename_test.py b/guessfilename_test.py index df43aec..8718917 100755 --- a/guessfilename_test.py +++ b/guessfilename_test.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -*- coding: utf-8; mode: python; -*- -# Time-stamp: <2017-09-23 11:13:42 vk> +# Time-stamp: <2017-11-29 19:07:42 vk> import unittest import logging @@ -117,6 +117,20 @@ class TestGuessFilename(unittest.TestCase): self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("2017-03-12-2017-09-23 Hipster.png"), "2017-03-12-2017-09-23 Hipster-PDA vollgeschrieben -- scan notes.png") + # rec_20171129-0902 A nice recording .wav -> 2017-11-29T09.02 A nice recording.wav + # rec_20171129-0902 A nice recording.wav -> 2017-11-29T09.02 A nice recording.wav + # rec_20171129-0902.wav -> 2017-11-29T09.02.wav + # rec_20171129-0902.mp3 -> 2017-11-29T09.02.mp3 +# import pdb; pdb.set_trace() + self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("rec_20171129-0902 A nice recording .wav"), + "2017-11-29T09.02 A nice recording.wav") + self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("rec_20171129-0902 A nice recording.wav"), + "2017-11-29T09.02 A nice recording.wav") + self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("rec_20171129-0902.wav"), + "2017-11-29T09.02.wav") + self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("rec_20171129-0902.mp3"), + "2017-11-29T09.02.mp3") + def test_contains_one_of(self): self.assertTrue(self.guess_filename.contains_one_of("foo bar baz", ['foo']))