<small id='GvUha'></small><noframes id='GvUha'>

<tfoot id='GvUha'></tfoot>

    1. <i id='GvUha'><tr id='GvUha'><dt id='GvUha'><q id='GvUha'><span id='GvUha'><b id='GvUha'><form id='GvUha'><ins id='GvUha'></ins><ul id='GvUha'></ul><sub id='GvUha'></sub></form><legend id='GvUha'></legend><bdo id='GvUha'><pre id='GvUha'><center id='GvUha'></center></pre></bdo></b><th id='GvUha'></th></span></q></dt></tr></i><div id='GvUha'><tfoot id='GvUha'></tfoot><dl id='GvUha'><fieldset id='GvUha'></fieldset></dl></div>
      <legend id='GvUha'><style id='GvUha'><dir id='GvUha'><q id='GvUha'></q></dir></style></legend>
        • <bdo id='GvUha'></bdo><ul id='GvUha'></ul>
      1. 利用Python实现获取照片位置信息

        时间:2023-12-17

        • <i id='5UoXF'><tr id='5UoXF'><dt id='5UoXF'><q id='5UoXF'><span id='5UoXF'><b id='5UoXF'><form id='5UoXF'><ins id='5UoXF'></ins><ul id='5UoXF'></ul><sub id='5UoXF'></sub></form><legend id='5UoXF'></legend><bdo id='5UoXF'><pre id='5UoXF'><center id='5UoXF'></center></pre></bdo></b><th id='5UoXF'></th></span></q></dt></tr></i><div id='5UoXF'><tfoot id='5UoXF'></tfoot><dl id='5UoXF'><fieldset id='5UoXF'></fieldset></dl></div>
          <legend id='5UoXF'><style id='5UoXF'><dir id='5UoXF'><q id='5UoXF'></q></dir></style></legend>

          <small id='5UoXF'></small><noframes id='5UoXF'>

              • <tfoot id='5UoXF'></tfoot>
                  <bdo id='5UoXF'></bdo><ul id='5UoXF'></ul>
                    <tbody id='5UoXF'></tbody>

                  获取照片位置信息并不是一个复杂的任务。可以通过 Python 的 EXIF 库读取照片中存储的位置信息。步骤分为以下三步:

                  1. 安装 exifread 库

                  在终端中输入以下命令可以安装 exifread 库:

                  pip install exifread
                  
                  1. 导入库并读取照片信息

                  在 Python 脚本中导入 exifread 库

                  import exifread
                  

                  读取照片元数据信息,并解析其中 GPS 标签中的位置信息

                  def get_exif_location(file_path):
                      with open(file_path, 'rb') as f:
                          tags = exifread.process_file(f)
                          latitude = None
                          longitude = None
                          for tag in tags:
                              if 'GPS GPSLatitude' in tag:
                                  latitude_str = tags['GPS GPSLatitude'].printable
                                  degrees, minutes, seconds = [float(x) for x in latitude_str.replace(',', '').split('/')]
                                  latitude = degrees + minutes / 60.0 + seconds / 3600.0
                  
                              elif 'GPS GPSLongitude' in tag:
                                  longitude_str = tags['GPS GPSLongitude'].printable
                                  degrees, minutes, seconds = [float(x) for x in longitude_str.replace(',', '').split('/')]
                                  longitude = degrees + minutes / 60.0 + seconds / 3600.0
                  
                              elif 'GPS GPSAltitude' in tag:
                                  altitude_str = tags['GPS GPSAltitude'].printable
                                  altitude = float(altitude_str)
                      return latitude, longitude, altitude
                  

                  请注意,这只是一个简单的方法,因为可以有多个 EXIF 代码段有类似的属性名称。

                  1. 调用函数并显示位置信息

                  调用 get_exif_location 函数并将照片路径作为参数传入。函数将返回一个元组,其中包含经度和纬度。我们可以打印这个元组来显示位置信息。

                  lat, lon, alt = get_exif_location('/path/to/photo.jpg')
                  print("Latitude: ", lat)
                  print("Longitude: ", lon)
                  print("Altitude: ", alt)
                  

                  例如,您可以使用以下代码来读取您的照片,并显示位置信息:

                  lat, lon, alt = get_exif_location('/Users/username/Desktop/photo.jpg')
                  print("Latitude: ", lat)
                  print("Longitude: ", lon)
                  print("Altitude: ", alt)
                  

                  这将返回位置信息,如下所示:

                  Latitude:  Longitude: 
                  34.048927237758
                  -118.25260180235
                  None
                  

                  示例1:

                  使用上面的代码来读取另一张照片时,如果照片中包含所需的位置信息,您将看到类似下面的输出:

                  lat, lon, alt = get_exif_location('/Users/username/Desktop/photo2.jpg')
                  print("Latitude: ", lat)
                  print("Longitude: ", lon)
                  print("Altitude: ", alt)
                  

                  这将返回位置信息,如下所示:

                  Latitude: 
                  40.70342
                  
                  Longitude: 
                  -74.0179
                  
                  Altitude: 
                  None
                  

                  示例2:

                  如果您想要一次处理一批照片,这个函数还可以在一个 for 循环中使用。您可以将照片路径存储在一个列表中,然后遍历列表并为每个文件调用 get_exif_location 函数,如下所示:

                  import os
                  
                  photos_directory = "/Users/username/Desktop/photos"
                  photos_list = os.listdir(photos_directory)
                  
                  for photo in photos_list:
                      file_path = os.path.join(photos_directory, photo)
                      lat, lon, alt = get_exif_location(file_path)
                      print(f"Latitude: {lat}, Longitude: {lon}, Altitude: {alt}")
                  

                  注意:这个函数并不能保证所有照片都能成功读取 GPS 信息,因此搜索您的图片时,请注意谨慎选择,以免浪费不必要的时间。

                  上一篇:Python调用百度AI实现身份证识别 下一篇:Python实现多线程下载脚本的示例代码

                  相关文章

                  <i id='SAOci'><tr id='SAOci'><dt id='SAOci'><q id='SAOci'><span id='SAOci'><b id='SAOci'><form id='SAOci'><ins id='SAOci'></ins><ul id='SAOci'></ul><sub id='SAOci'></sub></form><legend id='SAOci'></legend><bdo id='SAOci'><pre id='SAOci'><center id='SAOci'></center></pre></bdo></b><th id='SAOci'></th></span></q></dt></tr></i><div id='SAOci'><tfoot id='SAOci'></tfoot><dl id='SAOci'><fieldset id='SAOci'></fieldset></dl></div>

                  1. <legend id='SAOci'><style id='SAOci'><dir id='SAOci'><q id='SAOci'></q></dir></style></legend>
                      <bdo id='SAOci'></bdo><ul id='SAOci'></ul>

                    <small id='SAOci'></small><noframes id='SAOci'>

                    <tfoot id='SAOci'></tfoot>