python使用ip地址定位_python实现ip地址查询经纬度定位详解

这篇博客详细介绍了如何使用Python通过百度地图API获取IP地址的地理位置信息,包括省份、城市、经纬度等,提供了相关代码示例。
摘要由CSDN通过智能技术生成

python实现ip地址查询经纬度定位详解

发布时间:2020-10-24 10:08:31

来源:脚本之家

阅读:76

作者:linyouyi

1、此api已经关闭

https://api.map.baidu.com/highacciploc/v1?qcip=220.181.38.113&ak=你申请的AK&extensions=1&coord=bd09ll

2、现在改成

API首页:http://lbsyun.baidu.com/index.php?title=webapi/ip-api

使用方式:https://api.map.baidu.com/location/ip?ak=请输入您的AK&coor=bd09ll

# -*- coding: utf-8 -*-

import urllib

import urllib2

import json

import sys

reload(sys)

sys.setdefaultencoding('utf-8')

class SendUrl(object):

def send_url(self, url, headers, data=None):

opener = urllib2.build_opener()

request = urllib2.Request(url, data=data, headers=headers)

response = opener.open(request, timeout=10)

js = json.loads(response.read().decode("utf-8"))

print(type(js))

#print(dir(js))

#print(js)

print("================================================")

print('位置:'+ js['content']['address_detail']['province'] + js['content']['address_detail']['city'])

print('纬度:'+ js['content']['point']['y'])

print('经度:'+ js['content']['point']['x'])

print('节点:'+ js['address'])

print("================================================")

def Main():

# ak 需自行注册

ak = "xxxxxxxxxxxxxxxxxxxxxxxxx"

sx = SendUrl()

url = "https://api.map.baidu.com/location/ip"

data = {"ip": "36.101.234.14", "ak": ak, "coor": "bd09ll"}

headers = {

'User-Agent': "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36"}

sx.send_url(url, headers, data=urllib.urlencode(data))

if __name__ == '__main__':

Main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值