Exif情報は、Pythonで(情報、時間、場所、へのデバイスのアクセスを撮影)画像を取得しました

最初のステップ:インストール

exifreadをインストールするPIP

 

第二部:コード

インポートexifread
 インポート要求
 クラス:PhotoExifInfo()
     DEF  __init__ (セルフ、photo_path):
        self.photo_path = photo_path 
        self.baidu_map_ak = " " 

    DEFのget_tags(自己):
         "" " 写真情報の取得" "" 
        image_content =オープン(self.photo_pathを、' RB ' 
        タグ = exifread.process_file(image_contentは)
         "" " は、写真のすべての情報を横断取得
        :tags.itemsでJ、K()のために
            、印刷(J
        K) ""」


        プリント写真やいくつかの情報を
        印刷する撮影時間:、タグ[ EXIF日時DateTimeOriginal ])
         を印刷カメラメーカー:、タグ[ 画像メイク])
         を印刷カメラモデル:、タグ[ " モデル画像' ])
         を印刷' 画像サイズ:'タグ[ ' EXIF ExifImageWidth ' ]、タグ[ ' EXIF ExifImageLength " ])

        image_content.close()
        の戻りタグを

    デフget_lng_lat(自己):
         "" " 经纬度转换""" 
        タグ = self.get_tagsは()
         してみてください纬度 
            LatRef =タグ[ " GPS GPSLatitudeRef " ] .printable 
            緯度 =タグ[ " GPS緯度(数値)GPSLatitude " ] .printable [1:-1] .replace("  " "").replace(" / " " ")。スプリット( " "
            緯度 =フロート(LAT [0])+フロート(LAT [1])/ 60 +フロート(LAT [2])/ 3600
             であれば LatRef =!" N " 
                緯度 =緯度*(-1 经度 
            LonRef =タグ[ " GPS GPSLongitudeRef " ] .printable 
            ロン =タグ[ " GPS GPSLongitude " ] .printable [1:-1] .replace("  """).replace(" / "" ").split(" "
            ロン =フロート(ロン[0])+フロート(ロン[1])/ 60 +フロート(ロン[2])/ 3600
             であれば LonRef =!" E " 
                ロン =ロン*(-1 リターン緯度、経度
         除く印刷' 取得できません' 

    デフget_city_info(自己):
        結果 = self.get_lng_lat()
         の場合の結果:
            緯度、経度 = 結果の
            URL = "http://api.map.baidu.com/reverse_geocoding/v3/?ak= " + self.baidu_map_ak + " &出力= JSON&coordtype = wgs​​84ll&位置= " + STR(LAT)+ ' ' + STR(経度)
            応答 = 要求します。 (URL).json()を取得
            状況 =応答[ ' 状態を' ]
             の場合、ステータス== 0:
                アドレス =応答[ ' 結果' ] [ ' formatted_address ']
                 リターンアドレス
             プリント' baidu_mapエラー' 

場合 __name__ == ' __main__ ' 
    結果 =テスト= PhotoExifInfo(" IMG_20190918_080329.jpg " (.get_city_info))
     プリント" 拍摄地点:{} " .format(結果))

注:適用するために、それらの緯度及び経度が行くことができる変換するBaiduのインターフェイス

おすすめ

転載: www.cnblogs.com/lvye001/p/11543889.html