欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python 通過exifread讀取照片信息

 更新時間:2020年12月24日 17:09:26   作者:gdjlc  
這篇文章主要介紹了python 如何通過exifread讀取照片信息,幫助大家更好的理解和使用python,感興趣的朋友可以了解下

通過第三方庫exifread讀取照片信息。
exifread官網(wǎng):https://pypi.org/project/ExifRead/

一、安裝exifread

pip install exifread

二、讀取照片信息,以及根據(jù)經(jīng)緯度通過百度地圖API獲取位置

import exifread
import json
import urllib.request

# Open image file for reading (binary mode)
f = open('001.jpg', 'rb')

# Return Exif tags
tags = exifread.process_file(f)

'''
#打印所有照片信息
for tag in tags.keys():  
  print("Key: {}, value {}".format(tag, tags[tag]))
'''

#打印照片其中一些信息
print('拍攝時間:', tags['EXIF DateTimeOriginal'])
print('照相機制造商:', tags['Image Make'])
print('照相機型號:', tags['Image Model'])
print('照片尺寸:', tags['EXIF ExifImageWidth'], tags['EXIF ExifImageLength'])

#獲取經(jīng)度或緯度
def getLatOrLng(refKey, tudeKey):
  if refKey not in tags:
    return None
  ref=tags[refKey].printable
  LatOrLng=tags[tudeKey].printable[1:-1].replace(" ","").replace("/",",").split(",")
  LatOrLng=float(LatOrLng[0])+float(LatOrLng[1])/60+float(LatOrLng[2])/float(LatOrLng[3])/3600
  if refKey == 'GPS GPSLatitudeRef' and tags[refKey].printable != "N":
    LatOrLng=LatOrLng*(-1)
  if refKey == 'GPS GPSLongitudeRef' and tags[refKey].printable != "E":
    LatOrLng=LatOrLng*(-1)
  return LatOrLng

#調用百度地圖API通過經(jīng)緯度獲取位置
def getlocation(lat,lng):  
  url = 'http://api.map.baidu.com/geocoder/v2/?location=' + lat + ',' + lng + '&output=json&pois=1&ak=申請的百度地圖KEY'
  req = urllib.request.urlopen(url)
  res = req.read().decode("utf-8") 
  str = json.loads(res)
  #print(str)
  jsonResult = str.get('result')
  formatted_address = jsonResult.get('formatted_address')
  return formatted_address

lat = getLatOrLng('GPS GPSLatitudeRef','GPS GPSLatitude') #緯度
lng = getLatOrLng('GPS GPSLongitudeRef','GPS GPSLongitude') #經(jīng)度
print('緯度:{} 經(jīng)度:{}'.format(lat, lng))

location = getlocation(str(lat), str(lng))
print('位置:{}'.format(location))

以上就是python 通過exifread讀取照片信息的詳細內(nèi)容,更多關于python 讀取照片信息的資料請關注腳本之家其它相關文章!

相關文章

最新評論