Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Can you provide an example that would take the code below and conform to the instructions, please? I can process a file just fine, but

Can you provide an example that would take the code below and conform to the instructions, please? I can process a file just fine, but my issue is finding a way to process zip folders.

EXIF Data Acquistion Example

''' ''' Using this script provide as a baseline.

Expand the script as follows:

1) Allow the user to enter a path to a directory containing jpeg files.

2) Using that path, process all the .jpg files contained in that folder (use the testimages.zip set of images)

3) Extract the GPS Coordinates for each jpg (if they exist) and then report the results in a prettytable like this

''' PROCESS EACH JPEG FILE SECTION '''

latLonList = [] targetFile = input("Please provide image or folder to Process: ") # file must be located in the same folder if os.path.isfile(targetFile): gpsDictionary, exifList = ExtractGPSDictionary(targetFile) if exifList: TS = exifList[0] MAKE = exifList[1] MODEL = exifList[2] else: TS = 'NA' MAKE = 'NA' MODEL = 'NA'

print("Photo Details") print("-------------") print("TimeStamp: ", TS) print("Camera Make: ", MAKE) print("Camera Model: ", MODEL)

if (gpsDictionary != None):

# Obtain the Lat Lon values from the gpsDictionary # Converted to degrees # The return value is a dictionary key value pairs

dCoor = ExtractLatLon(gpsDictionary)

print(" Geo-Location Data") print("-----------------")

if dCoor: lat = dCoor.get("Lat") latRef = dCoor.get("LatRef") lon = dCoor.get("Lon") lonRef = dCoor.get("LonRef") if ( lat and lon and latRef and lonRef): print("Lattitude: ", '{:4.4f}'.format(lat)) print("Longitude: ", '{:4.4f}'.format(lon)) else: print("WARNING No GPS EXIF Data") else: print("WARNING No GPS EXIF Data") else: print("WARNING", " not a valid file", targetFile)

# Create Result Table Display using PrettyTable ''' GENERATE RESULTS TABLE SECTION''' ''' Result Table Heading''' try: resultTable = PrettyTable(['File-Name', 'Lat','Lon', 'TimeStamp', 'Make', 'Model']) ''' Your work starts here ''' resultTable.add_row([os.path.abspath(targetFile), lat, lon, TS, MAKE, MODEL]) except Exception as error: print(error)

print(resultTable)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Students also viewed these Databases questions

Question

l. Does SKI face any risks if it tightens its credit policy?

Answered: 1 week ago

Question

Explain the testing process of accounting 2?

Answered: 1 week ago