您现在的位置是:网站首页> 编程资料编程资料
利用Python实现获取照片位置信息_python_
2023-05-25
316人已围观
简介 利用Python实现获取照片位置信息_python_
引言
通过一张照片居然发现女友在宿舍里没去上课!强大的照片位置信息获取,快来一起学习吧!
一、exifread函数库
要怎样获得拍摄图片的GPS呢?这里我们需要exifread 库,这个就是用来提取 GPS 信息的。直接 pip install exifread 来安装就好了。
安装exrfread库(PyCharm)
打开settings如下图

选择+号搜索exifread

安装即可
什么是exifread函数库
原理:
先把图片以二进制的格式读取出来,然后通过 exifread 库把里面的 GPS 信息提取出来,再以特定的格式打印出来,最后直接复制里面的经纬度信息,在支持通过经纬度来查位置的地图里一查就能定位到了。
二、获取女朋友发来的照片(单身勿扰)

女朋友居然告诉我这只狗好可爱?
哪里可爱了!!?

将图片放在代码所在的目录下
三、具体代码实现
import exifread import re # 读取图片为二进制格式 f = open("example2.jpg","rb") tags = exifread.process_file(f) # GPS信息 GPS = {} # 拍摄时间 Data = "" for tag,value in tags.items(): # 获取纬度信息 if re.match('GPS GPSLatitude', tag): try: match_result=re.match('\[(\w*), (\w*), (\w.*)/(\w.*)\]', str(value)).groups() GPS['纬度'] = str(int(match_result[0])) + " " + str(int(match_result[1])) + " " + str(int(match_result[2])/int(match_result[3])) except: GPS['纬度'] = str(value) # 获取纬度信息 elif re.match('GPS GPSLongitude', tag): try: match_result=re.match('\[(\w*), (\w*), (\w.*)/(\w.*)\]',str(value)).groups() GPS['经度'] = str(int(match_result[0])) + " " + str(int(match_result[1])) + " " + str(int(match_result[2])/int(match_result[3])) except: GPS['经度'] = str(value) # 获取高度 elif re.match('GPS GPSAltitude', tag): GPS['高度'] = str(value) # 获取拍摄时间 elif re.match('Image DateTime', tag): Data = str(value) # 打印信息 print("纬 经 度:" + GPS['纬度'] + "," + GPS['经度']) print("拍摄时间:" + Data) 结果

四、经纬度转换
百度搜索经纬度查询

随便点进去一个能够转换的

输入得到的经纬度即可
可恶,居然在宿舍拍狗狗不去上课!!!
好了今天的分享就到这里,希望大家一起进步!
到此这篇关于利用Python实现获取照片位置信息的文章就介绍到这了,更多相关Python照片位置信息内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
相关内容
- pandas重复行删除操作df.drop_duplicates和df.duplicated的区别_python_
- Pandas读存JSON数据操作示例详解_python_
- Python条件语句的使用_python_
- 如何使用 Python为你的在线会议创建一个假的摄像头_python_
- Python+OpenCV实战之拖拽虚拟方块的实现_python_
- Python实现文本特征提取的方法详解_python_
- Python 中单例模式的实现方法_python_
- python正则表达中的re库常用方法总结_python_
- Python NumPy教程之遍历数组详解_python_
- Python一键实现PDF文档批量转Word_python_
