python根据照片获取地理位置及泄露防御

首先,说明一下python确实可以根据照片获取地理位置,但是也是有一定的限制条件的。

获取照片地理位置的实现思路是这样的:

  • 通过提取照片中的经纬度信息。
  • 然后通过经纬度信息找到具体的地理位置信息。
  • 安装可以读取经纬度信息的python非标准库exifread
pip install exifread
  • 将该模块导入到当前代码块中。
import exifread as ex
  • 编写照片信息读取函数,获取照片中的经纬度信息。
def read_image():
    '''
    经纬度信息读取函数
    :return:
    '''
    image = open('C:/sc.jpg', 'rb')  # 打开照片文件
    messages = ex.process_file(image)  # 获取照片信息
    '''遍历提取照片信息'''
    for message in messages:
        print('照片信息:', message)
        if message == "GPS GPSLongitude":
            print("经度 =", messages[message], messages['GPS GPSLatitudeRef'])
        elif message == "GPS GPSLatitude":
            print("纬度 =", messages[message], messages['GPS GPSLongitudeRef'])

if __name__ == '__main__':
    read_image()

通过上面的处理已经获取当前的经纬度信息,现在只需要根据经纬度信息获取具体的地理位置就可以了。

直接使用web网站去查询地理位置就可以了。

地理位置转换网址:http://www.giscalculator.com/enter_regeocode_input/

最后,那么如何防止自己的手机照片被追踪到地址呢,需要说明一下照片被获取地理位置信息的硬性条件。

1、手机是安卓手机才会出现被追踪位置的情况。

2、手机拍摄时开启了GPS定位的照片才会存储GPS位置信息,否则是获取不到的。

3、手机照片在发送过程中必须是原图发送才会出现将照片其他信息发送给别人的情况。

根据上面情况,手机在拍照时关闭定位、发送给别人照片时为避免信息泄漏不要使用原图发送,若是苹果手机暂时不用担心啦!

更多关于python获取照片地理位置的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python编程调用百度API实现地理位置经纬度坐标转换示例

    目录 1.1,用百度账号登陆百度地图控制台 1.2,创建一个应用,获取 AK 参数 1.3,地理编码.逆地理编码 1.3.1 地理编码 1.3.2 逆地理编码 经纬度坐标转换最常见办法就是调用第三方 API,例如百度.高德地图等服务平台,提供了相应的功能接口,它们的这类技术已经非常成熟啦,准确稳定,关键还是免费的 ~ 本期教程以百度为例(高德的用方类似),介绍一下其用法 1.1,用百度账号登陆百度地图控制台 百度地图开放平台 1.2,创建一个应用,获取 AK 参数 登录控制台之后,选择左侧 应用

  • 基于python实现地址和经纬度转换

    中文领域: 指的是提取境内地址的经纬度,的主要调用的是百度API.中间经历了一些波折,刚开始直接使用网上代码debug半天都不行,才发现要随时跟进官方改动,使用别人的API一定要看说明书啊! 首先需要从百度地图平台上注册一个AK(在这之前要注册百度的开发者身份,免费),进入其地理编码网址: http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding 页面: 由于我们是要从地址转换经纬度,因此看地理编码就可以了

  • python实现获取当前设备的地点位置

    目录 一.环境介绍 1.搜索“高德地图API”,进入官网,注册自己账号 2.进入控制台,创建相关应用 3.进入web服务API界面 二.代码 一.环境介绍 Python版本 : Python3.8开发工具 : Pycharm 21第三方库 : requests 还会用到的是 Python 自带的 json 库.因为调用 API 返回的结果是 JSON 或者 XML 形式的报文,目前,除少数传统公司使用XML传输信息,大多数互联网公司会使用json库传输信息. 1. 搜索 “高德地图API” ,进

  • Python 利用高德地图api实现经纬度与地址的批量转换

    我们都知道,可以使用高德地图api实现经纬度与地址的转换.那么,当我们有很多个地址与经纬度,需要批量转换的时候,应该怎么办呢? 在这里,选用高德Web服务的API,其中的地址/逆地址编码,可以实现经纬度与地址的转换. 高德API地址: 地理/逆地理编码:http://lbs.amap.com/api/webservice/guide/api/georegeo 坐标转换:http://lbs.amap.com/api/webservice/guide/api/convert 1.申请key 2.坐

  • 基于Python获取照片的GPS位置信息

    这篇文章主要介绍了基于Python获取照片的GPS位置信息,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 昨天听人说,用手机拍照会带着GPS信息,原来没注意过这个,因此查看下并使用代码获取照片里的GPS信息 查看图片文件属性 说明: 一般手机拍照时默认会打开地理位置开关 经过压缩后,通常会将GPS信息压缩掉 EXIF 可交换图像文件常被简称为EXIF(Exchangeable image file format),是专门为数码相机的照片设定的,

  • python根据照片获取地理位置及泄露防御

    首先,说明一下python确实可以根据照片获取地理位置,但是也是有一定的限制条件的. 获取照片地理位置的实现思路是这样的: 通过提取照片中的经纬度信息. 然后通过经纬度信息找到具体的地理位置信息. 安装可以读取经纬度信息的python非标准库exifread pip install exifread 将该模块导入到当前代码块中. import exifread as ex 编写照片信息读取函数,获取照片中的经纬度信息. def read_image(): ''' 经纬度信息读取函数 :retur

  • python使用百度或高德地图获取地理位置并转换

    目录 一.地理编码与逆编码 二.高德地图地理编码 三.百度地图地理编码 四.坐标转换和空间化 总结 一.地理编码与逆编码 地理编码与逆编码表示的是地名地址与地理坐标(经纬度)互相转换的过程.其中,将地址信息映射为地理坐标的过程称之为地理编码:将地理坐标转换为地址信息的过程称之为逆地理编码.(ps:猜猜我在哪) 地理编码能对一些只有名称或地址的数据进行空间化,从而可以开展空间分析和制图,对于数据分析人员十分重要. 大量地图厂商都提供了相关的API,可以直接利用这些API进行转化.国外的如谷歌.es

  • python使用OpenCV获取高动态范围成像HDR

    目录 1 背景 1.1 什么是高动态范围(HDR)成像? 1.2 高动态范围(HDR)成像如何工作? 2 代码 2.1 运行环境配置 2.2 读取图像和曝光时间 2.3 图像对齐 2.4 恢复相机响应功能 2.5 合并图像 2.6 色调映射 2.7 工程代码 1 背景 1.1 什么是高动态范围(HDR)成像? 大多数数码相机和显示器将彩色图像捕获或显示为24位矩阵.每个颜色通道有8位,一共三个通道,因此每个通道的像素值在0到255之间.换句话说,普通相机或显示器具有有限的动态范围. 然而,我们周

  • SpringBoot使用ip2region获取地理位置信息的方法

    目录 1.简介 2.引入依赖 3.测试 4.测试结果 1.简介 ip2region,准确率99.9%的离线IP地址定位库,0.0x毫秒级查询,数据库文件大小只有1.5M,提供了java,php,c,python,nodejs,golang,c#等查询绑定和Binary,B树,内存三种查询算法,仓库地址: https://gitee.com/lionsoul/ip2region 2.引入依赖 <!-- Ip地址获取 --> <dependency> <groupId>ne

  • python解析照片拍摄时间进行图片整理

    目录 引言 1. 获取图片拍摄时间 2. 获取视频拍摄时间 3. 根据图片时间建立文件夹 完整代码 引言 手机中拍摄照的照片和视频快爆了,想转移到PC端,并按时间建立文件夹存储到电脑中,本文主要介绍如何通过python获取手机拍摄图片的时间信息并存储. 1. 获取图片拍摄时间 首先需要安装exifread库.通过EXIF(Exchangeable image file format: 可交换图像文件格式) 获取这些信息. 获取图片时间信息: import exifread with open(f

  • python通过scapy获取局域网所有主机mac地址示例

    python通过scapy获取局域网所有主机mac地址 复制代码 代码如下: #!/usr/bin/env python# -*- coding: utf-8 -*-from scapy.all import srp,Ether,ARP,confipscan='192.168.1.1/24'try:    ans,unans = srp(Ether(dst="FF:FF:FF:FF:FF:FF")/ARP(pdst=ipscan),timeout=2,verbose=False)exc

  • python 使用get_argument获取url query参数

    python 使用get_argument获取url query参数 ornado的每个请求处理程序,我们叫做handler,handler里可以自定义自己的处理程序,其实也就是重写方法,如post,get,get_current_user,send_error等等,这里我们只讲get和post的自定义. 我们都知道,在Tornado里,获得用户的输入,都是一个get_argument搞定,似乎很顺理成章: def post(self): nowamagic = self.get_argumen

  • Python使用django获取用户IP地址的方法

    本文实例讲述了Python使用django获取用户IP地址的方法.分享给大家供大家参考.具体如下: 函数实现: def get_client_ip(request): try: real_ip = request.META['HTTP_X_FORWARDED_FOR'] regip = real_ip.split(",")[0] except: try: regip = request.META['REMOTE_ADDR'] except: regip = "" r

  • 基于PHP实现通过照片获取ip地址

    在本教程中,我们将学习如何用一张照片来盗取ip地址.我的想法是通过修改.htaccess文件,将jpg文件当作php文件来解析. 下面就是我们需要向.htaccess中添加的代码: AddHandler application/x-httpd-php5 .jpg 然后将下面的代码复制到记事本中,命名为grabber.jpg <?php $fh = fopen('ip_list.txt', 'a'); fwrite($fh, $_SERVER['REMOTE_ADDR']." ")

  • Python通过PIL获取图片主要颜色并和颜色库进行对比的方法

    本文实例讲述了Python通过PIL获取图片主要颜色并和颜色库进行对比的方法.分享给大家供大家参考.具体分析如下: 这段代码主要用来从图片提取其主要颜色,类似Goolge和Baidu的图片搜索时可以指定按照颜色搜索,所以我们先需要将每张图片的主要颜色提取出来,然后将颜色划分到与其最接近的颜色段上,然后就可以按照颜色搜索了. 在使用google或者baidu搜图的时候会发现有一个图片颜色选项,感觉非常有意思,有人可能会想这肯定是人为的去划分的,呵呵,有这种可能,但是估计人会累死,开个玩笑,当然是通

随机推荐