diff options
author | Earl Ou <shunhsingou@google.com> | 2012-10-18 16:38:32 +0800 |
---|---|---|
committer | Earl Ou <shunhsingou@google.com> | 2012-10-18 16:38:32 +0800 |
commit | 5be98ed60daac27a7d99fe89b9ed4709bfb218aa (patch) | |
tree | 6f1b5cd288bad0c5556522127098927610b1d30f /tests | |
parent | 144dc616219e088680c267ae6a0463364b33c41d (diff) | |
download | android_packages_apps_Snap-5be98ed60daac27a7d99fe89b9ed4709bfb218aa.tar.gz android_packages_apps_Snap-5be98ed60daac27a7d99fe89b9ed4709bfb218aa.tar.bz2 android_packages_apps_Snap-5be98ed60daac27a7d99fe89b9ed4709bfb218aa.zip |
use NO_VALUE when the output of exiftool is invalid
Change-Id: I85c0054d70ff1639e643a30658ca59f1803f7d13
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/exiftool_parser/parser.py | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/tests/exiftool_parser/parser.py b/tests/exiftool_parser/parser.py index 5de54a352..7df23f154 100755 --- a/tests/exiftool_parser/parser.py +++ b/tests/exiftool_parser/parser.py @@ -33,7 +33,7 @@ print "<exif>" # | | | + [xxx directory with xx entries] # p = re.compile( - "(((?:\| )+)[0-9]*\).*? = .*?\n.*?- Tag 0x[0-9a-f]{4})" + "|" + "(((?:\| )+)[0-9]*\)(?:(?:.*? = .*?)|(?:.*? \(SubDirectory\) -->))\n.*?- Tag 0x[0-9a-f]{4})" + "|" + "(((?:\| )*)\+ \[.*? directory with [0-9]+ entries]$)" , re.M) tags = p.findall(text) @@ -68,16 +68,22 @@ for s in tags: _id = _id.group(0) # find the name - name = re.search("[0-9]*?\).*? = ", s) - name = name.group(0)[4:-3] + name = re.search("[0-9]*?\).*?(?:(?: = )|(?: \(SubDirectory\) -->))", s) + name = name.group(0).split()[1] # find the raw value in the parenthesis - value = re.search("\(.*\)\n", s) - if (name != 'Model' and value): - value = value.group(0)[1:-2] + value = re.search("\(SubDirectory\) -->", s) + if value: + value = "NO_VALUE" else: - value = re.search("=.*\n", s) - value = value.group(0)[2:-1] + value = re.search("\(.*\)\n", s) + if (name != 'Model' and value): + value = value.group(0)[1:-2] + else: + value = re.search("=.*\n", s) + value = value.group(0)[2:-1] + if "[snip]" in value: + value = "NO_VALUE" print (' <tag ifd="' + ifds[-1] + '" id="' + _id + '" name="' + name +'">' + value + "</tag>") |