Example #1
0
    def test_fromString(self):
        gps = Gps.fromString("""38°59'26.348"N, 5°24'47.948"E""")
        self.assertAlmostEqual(gps.latitude, 38.99, 2);
        self.assertEqual(gps.latitude_ref, 'N')
        self.assertAlmostEqual(gps.longtitude, 5.41, 2)
        self.assertEqual(gps.longtitude_ref, 'E')
        self.assertEqual(gps.altitude, None)

        gps = Gps.fromString("""38°59'26.348"N, 5°24'47.948"E, 254""")
        self.assertAlmostEqual(gps.latitude, 38.99, 2);
        self.assertEqual(gps.latitude_ref, 'N')
        self.assertAlmostEqual(gps.longtitude, 5.41, 2)
        self.assertEqual(gps.longtitude_ref, 'E')
        self.assertEqual(gps.altitude, 254.)

        self.assertRaises(ValueError, Gps.fromString, "blah")
Example #2
0
    def process(self, file_name):
        exivGps = ExivGps(file_name)
        try:
            gps = exivGps.get()
            gps = gps or "N/A"
        except ExivGps.ExivError:
            print("Failed to get exif information, skipping: '%s'" % file_name)
            return

        tabs = 6 - divmod((len(file_name) + 2 + 7), 8)[0]
        if tabs < 0:
            tabs = 0
        tabs = "\t" * tabs
        print("'%s'%s - [%s] : " % (file_name, tabs, str(gps)), end="", flush=True)
        newGps = stdin.readline().strip()
        if newGps:
            newGps = Gps.fromString(newGps, gps)
            exivGps.set(newGps)