added regex and handling of video files from Android camera

This commit is contained in:
Karl Voit 2017-01-06 14:45:12 +01:00
parent b8fb636862
commit 5e3d9e36e1

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Time-stamp: <2016-12-30 11:52:48 vk>
# Time-stamp: <2017-01-06 14:44:59 vk>
# TODO:
# * add -i (interactive) where user gets asked if renaming should be done (per file)
@ -138,6 +138,8 @@ class GuessFilename(object):
IMG_REGEX = re.compile(u'IMG_' + DATESTAMP_REGEX + '_' + TIMESTAMP_REGEX + '(.+)?.jpg', re.UNICODE)
IMG_INDEXGROUPS = [1, '-', 2, '-', 3, 'T', 4, '.', 5, ['.', 7], 8, '.jpg']
VID_REGEX = re.compile(u'VID_' + DATESTAMP_REGEX + '_' + TIMESTAMP_REGEX + '(.+)?.mp4', re.UNICODE)
VID_INDEXGROUPS = [1, '-', 2, '-', 3, 'T', 4, '.', 5, ['.', 7], 8, '.mp4']
# MediathekView: Settings > modify Set > Targetfilename: "%DT%d h%i %s %t - %T - %N.mp4"
# results in files like:
@ -477,10 +479,14 @@ class GuessFilename(object):
if regex_match:
return self.build_string_via_indexgroups(regex_match, self.OSMTRACKS_INDEXGROUPS).replace('_', ' ')
# digital camera images: IMG_20161014_214404 foo bar.jpg -> 2016-10-14T21.44.04 foo bar.jpg
# digital camera images: IMG_20161014_214404 foo bar.jpg -> 2016-10-14T21.44.04 foo bar.jpg OR
regex_match = re.match(self.IMG_REGEX, oldfilename)
if regex_match:
return self.build_string_via_indexgroups(regex_match, self.IMG_INDEXGROUPS)
# VID_20170105_173104.mp4 -> 2017-01-05T17.31.04.mp4
regex_match = re.match(self.VID_REGEX, oldfilename)
if regex_match:
return self.build_string_via_indexgroups(regex_match, self.VID_INDEXGROUPS)
# 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: