跳转到主要内容

为Flask提供的最简单的GeoIP查找库。

项目描述

为Flask提供的最简单的GeoIP查找库。

https://raw.githubusercontent.com/whois-api-llc/flask-simple-geoip/master/images/geoip.png flask-simple-geoip Release flask-simple-geoip Build

元数据

先决条件

要使用此库,您需要创建一个免费的GeoIPify帐户: https://geoipify.whoisxmlapi.com/

如果您还没有这样做,请现在就做;您将获得一个用于使用库所需的API密钥。

安装

要使用 pypi 安装 flask-simple-geoip,只需运行

$ pip install flask-simple-geoip

在项目目录的根目录下。

用法

一旦安装了 flask-simple-geoip,您就可以用它轻松地查找给定IP地址的物理位置。

本库为您提供了所有 sorts of 地理位置数据,您可以在应用程序中以任何数量的方式使用。

以下是一个简单的 Flask 应用程序,它利用了地理位置查找。

from flask import Flask, jsonify
from flask_simple_geoip import SimpleGeoIP


app = Flask(__name__)

# The API key is obtained from the GEOIPIFY_API_KEY environment variable.
# Alternatively it can be set as follows:
# app.config.update(GEOIPIFY_API_KEY='YOUR_API_KEY')

# Initialize the extension
simple_geoip = SimpleGeoIP(app)


@app.route('/')
def test():
    # Retrieve geoip data for the given requester
    geoip_data = simple_geoip.get_geoip_data()

    return jsonify(data=geoip_data)

以下是进行 geoip 查询请求时可能返回的数据类型。

{
  "ip": "8.8.8.8",
  "location": {
    "country": "US",
    "region": "California",
    "city": "Mountain View",
    "lat": 37.40599,
    "lng": -122.078514,
    "postalCode": "94043",
    "timezone": "-08:00"
  }
}

默认情况下,此库会为您处理失败的 HTTP 请求重试。例如:如果 GeoIPify API 服务当前不可用或存在问题,您的请求将在失败之前最多重试三次。

如果在 geoip 查询仍然无法成功返回的情况下,返回的数据将是 None。此库 永远不会 抛出异常。这个决定是经过战略考虑的:没有 geoip 数据不应该是请求失败的原因。=)

变更日志

按降序排列的所有库更改。

版本 0.2.4

发布于 2020 年 10 月 27 日。

  • 在说明书中描述了如何提供 API 密钥。

版本 0.2.3

发布于 2020 年 8 月 26 日。

  • 修复了 pypy 支持。

版本 0.2.2

发布于 2020 年 8 月 24 日。

  • 添加了对 X_FORWARDED_FOR 头的支持。

版本 0.1.1

发布于 2018 年 6 月 18 日。

  • 修复说明,以便它在 PyPI 上正确显示 :(

版本 0.1.0

发布于 2018 年 6 月 18 日。

  • 首次发布!

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源代码分发

Flask-Simple-GeoIP-0.2.4.tar.gz (4.3 kB 查看哈希值)

上传时间 源代码

构建分发

Flask_Simple_GeoIP-0.2.4-py3-none-any.whl (4.0 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面