10分钟使用Python搭建自己的IP定位查询接口

背景

近期公司对用户定位这块提了需要ip定位的需求,找了半天资料,发现了这个超级好用的python库,基于纯真网络dat数据,ip地址库和查询全都已经封装好了,使用库10分钟搞定,美滋滋。话不多说,开整!

上代码

说明
  • 项目基于PYTHON3环境,接口端口号为8889。
  • 项目使用qqwry库和flask轻量级接口框架。
qqwry_update.py 地址库更新工具类
from qqwry import updateQQwry

# 更新数据
ret = updateQQwry('ip.dat')
print(ret)
qqwry_ip.py 定位接口
import json

from qqwry import QQwry
import flask
from flask import request

server = flask.Flask(__name__)
wry = QQwry()
wry.load_file('ip.dat')

@server.route("/ip", methods=['get'])
def location():
    ip = request.args.get("ip")
    info = wry.lookup(ip)
    res = {'ip': ip, 'city': info[0], 'isp': info[1]}
    print(res)
    return json.dumps(res)

server.run(port=8889, debug=True)

请求示例

http://lzzly.top:8889/ip?ip=123.145.210.216

请求示例

你可能感兴趣的:(10分钟使用Python搭建自己的IP定位查询接口)