
2024年免費(fèi)日歷假期API
您是否希望圍繞 IP 地址釋放商業(yè)智能的力量?在當(dāng)今國際化的世界中,了解你的受眾所在的位置對商業(yè)成功至關(guān)重要。使用 IP API 檢查地理位置 是一種強(qiáng)大的數(shù)字連接方式,可以更多地了解您的客戶。
這篇博文將向您展示如何制作使用tracking API?查找客戶 IP 地址的 Python Flask 應(yīng)用程序。我們假設(shè)您知道如何以簡單的方式使用 Python 和 Flask。讓我們直接開始吧!
使用 IP API 跟蹤地理位置可為您提供在競爭中保持領(lǐng)先地位的洞察力。這實(shí)質(zhì)上意味著使用 IP 地址來確定用戶的大致位置(城市、國家、地區(qū))。
為什么這對您的項(xiàng)目很有價值?以下是幾個原因:
用一句話來說,您可以根據(jù)位置定位特定受眾并有效防止欺詐。
IP API由市場上最強(qiáng)大且可擴(kuò)展的引擎之一提供動力 -在一個地方為您的所有IP智能需求提供#1解決方案。
IP API提供了一個易于使用的API接口,允許客戶查看與IPv4和IPv6地址相關(guān)的各種信息。API 具有不同的參數(shù),您可以配置以獲得不同的信息集。
API 總共附帶 3 個可用的 API 終端節(jié)點(diǎn),每個終端節(jié)點(diǎn)都涵蓋不同類型的功能。
這是使用 IP API 跟蹤地理位置的核心功能 – 查找提供的單個 IP 地址。您可以創(chuàng)建用戶界面或?qū)⑵浼傻浆F(xiàn)有應(yīng)用程序中,以允許用戶輸入 IP 地址以進(jìn)行位置信息檢索。
API 請求示例:
https://api.ipapi.com/api/161.185.160.93
? access_key = YOUR_ACCESS_KEY
這涉及一次查找多個 IP 地址。對于分析網(wǎng)站流量模式或管理大型數(shù)據(jù)集非常有用。IPAPI 商業(yè)計劃提供批量查找,以有效地處理大量查找。
API 請求示例:
https://api.ipapi.com/api/161.185.160.93
,87.111.168.248,210.138.184.59
? access_key = YOUR_ACCESS_KEY
這涉及使用當(dāng)前用戶向Flask應(yīng)用程序發(fā)出請求時的IP地址來識別地理位置。你可以通過 Flask 中的 request.remote_addr 屬性直接訪問此信息。這對于欺詐檢測或根據(jù)用戶位置個性化內(nèi)容等任務(wù)非常有用。
API 請求示例:
https://api.ipapi.com/api/check
? access_key = YOUR_ACCESS_KEY
在我們的綜合文檔中了解更多信息。
前往 ipapi 網(wǎng)站并設(shè)置您的訂閱計劃。您可以選擇 Free 計劃進(jìn)行測試。
前往 ipapi 網(wǎng)站并設(shè)置您的訂閱計劃。您可以選擇 Free 計劃進(jìn)行測試。
API 請求示例:
https://api.ipapi.com/api/161.185.160.93 ? access_key = YOUR_ACCESS_KEY
API 響應(yīng)示例:
{
"ip":"01.001.002.12",
"type":"ipv4",
"continent_code":"AS",
"continent_name":"Asia",
"country_code":"UZ",
"country_name":"Uzbekistan",
"region_code":"TK",
"region_name":"Toshkent Shahri",
"city":"Tashkent",
"zip":"100080",
"latitude":41.29949951171875,
"longitude":69.24006652832031,
"location":{
"geoname_id":1512569,
"capital":"Tashkent",
"languages":[
{
"code":"uz",
"name":"Uzbek",
"native":"\u040e\u0437\u0431\u0435\u043a"
},
{
"code":"ru",
"name":"Russian",
"native":"\u0420\u0443\u0441\u0441\u043a\u0438\u0439"
}
],
"country_flag":"http:\/\/assets.ipapi.com\/flags\/uz.svg",
"country_flag_emoji":"\ud83c\uddfa\ud83c\uddff",
"country_flag_emoji_unicode":"U+1F1FA U+1F1FF",
"calling_code":"998",
"is_eu":false
}
}
現(xiàn)在最精彩的部分就開始了! 注冊后,您將獲得 API 訪問密鑰。在此演示中,我們將 Python Flask Web 應(yīng)用程序與 IP-API 集成。此外,此方案還演示了 Web API 如何調(diào)用其他 Web API。
但首先,什么是 Flask?Flask 是一種廣泛使用的 Python 框架,用于構(gòu)建在線應(yīng)用程序。這個微框架的目標(biāo)是提供一種開發(fā) Web 服務(wù)的簡單方法。
如果通過配置身份驗(yàn)證來保護(hù)Flask API,那么這將是一個受保護(hù)的Web API。
現(xiàn)在,讓我們開始行動吧。按照以下步驟操作,您將擁有一個調(diào)用另一個 API 的工作 Flask API!
打開 PowerShell 或 Bash(如果已配置)。現(xiàn)在鍵入這些命令。
之后,鍵入這些命令為您的項(xiàng)目創(chuàng)建虛擬環(huán)境。然后運(yùn)行虛擬環(huán)境,然后升級您的 pip。
就我而言,我將使用 VS Code 進(jìn)行編碼,我們已經(jīng)使用“code .”命令打開了它。并打開你的 app.py 主文件。
現(xiàn)在將這些源代碼復(fù)制到您的 app.py 并使用 HTML 網(wǎng)頁進(jìn)行數(shù)據(jù)表示(您可以從 GitHub 存儲庫中找到它們)
from flask import Flask, request, redirect, url_for
import requests
import json
app = Flask(__name__)
app.config['DEBUG'] = True
@app.route('/')
def index():
return '<h1>IP API with Python Flask</h1>'
@app.route('/result/<string:accKey>/<string:ip>/<string:continent_name>/<string:region_name>/<string:zip_code>/<string:capital>')
def result(accKey, ip, continent_name, region_name, zip_code, capital):
return '<h3>Continent Name: {}; <br> Region Name: {}; <br> Zip Code: {}; <br> Capital Name: {}; <br> Your Access Key: {};<br>IP:{} </h3>'.format(continent_name, region_name, zip_code, capital, accKey, ip)
@app.route('/ipapi', methods=['GET', 'POST'])
def ipapi():
if request.method == 'GET':
return '''<h1>Please fill out the parameters</h1>
<form method="POST" action="/ipapi">
<input type="text" name="accKey">
<input type="text" name="ip">
<input type="submit" value="Request">
</form>'''
else:
accKey = request.form['accKey']
ip = request.form['ip']
req = requests.get('http://api.ipapi.com/'+ ip + '?access_key=' + accKey)
response = req.json()
continent_name = response['continent_name']
region_name = response['region_name']
zip_code = response['zip']
capital = response["location"]["capital"]
return redirect(url_for('result', accKey=accKey, ip=ip, continent_name=continent_name,
region_name=region_name, zip_code=zip_code, capital=capital))
if __name__ == '__main__':
app.run()
根據(jù)系統(tǒng)上的配置,您可以使用以下命令運(yùn)行 Flask Web 應(yīng)用程序:
結(jié)果如下:
如您所見,從 Python Flask 或任何其他編程語言集成 ipapi 很容易。
例如,Delphi 提供跨平臺的低代碼開發(fā)。有了這個,您可以在幾秒鐘內(nèi)連接到任何 API,并在幾分鐘內(nèi)創(chuàng)建一個具有數(shù)據(jù)層的成熟應(yīng)用程序。此外,您可以使用 Delphi FireMonkey 框架隨心所欲地自定義您的應(yīng)用程序,它使您可以訪問低代碼工具和匯編語言。
盡管使用 IP API 跟蹤地理位置很有用,但重要的是要以明智和負(fù)責(zé)任的方式使用它們。當(dāng)您將 IP 跟蹤添加到 Python Flask 應(yīng)用程序時,您應(yīng)該始終執(zhí)行以下操作:
總體而言,ipapi 是領(lǐng)先的 IP 智能服務(wù),全球數(shù)百萬開發(fā)人員都在使用它。
準(zhǔn)備好開始使用 IP Intelligence 了嗎?請立即注冊吧!
這篇博文指導(dǎo)您構(gòu)建一個基本的 Flask 應(yīng)用程序,該應(yīng)用程序通過 IP API 利用地理定位。我們已經(jīng)介紹了設(shè)置項(xiàng)目環(huán)境、選擇 API、定義路由、進(jìn)行 API 調(diào)用、解析數(shù)據(jù)和返回結(jié)果。此外,我們還簡要討論了如何更有效地處理應(yīng)用程序中的錯誤。
以下是您可以探索的一些潛在擴(kuò)展:
請記住,請參閱您選擇的 IP 地理定位 API 的文檔,了解具體的詳細(xì)信息和功能。通過一些自定義,您可以使用 Python、Flask 和 IP 地理定位 API 構(gòu)建一個強(qiáng)大的 IP 地址地理定位工具。
單個 Flask 應(yīng)用程序沒有穩(wěn)定的 IP 地址。它在具有 IP 地址的設(shè)備或服務(wù)器上運(yùn)行。
Flask 應(yīng)用程序部署的位置決定了精確的 IP 地址。在開發(fā)過程中,它通常可以通過 http://127.0.0.1:5000/ (localhost) 訪問,同時在本地操作。生產(chǎn)設(shè)置中的 IP 地址由服務(wù)器的設(shè)置決定。
請注意:未經(jīng)授權(quán)去訪問某人的IP地址可能是不道德的,并造成隱私問題。一般來說,除非特別批準(zhǔn),否則您不應(yīng)跟蹤某人的位置。
Python 無法直接從 Internet 檢索個人的 IP 地址。但是,如果有人訪問您的網(wǎng)站或與您的 Flask 應(yīng)用程序交互,您可以通過請求對象獲取他們的 IP 地址。
您可以使用 socket 或 dnspython 等庫來執(zhí)行 DNS 查找并檢索與網(wǎng)站域名關(guān)聯(lián)的 IP 地址。
Flask 應(yīng)用程序中的請求對象包含有關(guān)傳入請求的重要信息,包括客戶端的 IP 地址。該請求可用于獲取名為 remote_addr 的數(shù)據(jù)函數(shù)。
必須承認(rèn),在用戶使用代理服務(wù)器的情況下,這可能無法始終如一地提供其 IP 地址的準(zhǔn)確指示。
冪簡集成是國內(nèi)領(lǐng)先的API集成管理平臺,專注于為開發(fā)者提供全面、高效、易用的API集成解決方案。冪簡API平臺可以通過以下兩種方式找到所需API:通過關(guān)鍵詞搜索API、或者從API Hub分類頁進(jìn)入尋找。
Ipapi 是市場上具有 IP API 查找 RESTful Web 服務(wù)的 #1 地理位置,被全球 30,000+ 企業(yè)使用。由于其簡單的界面和性能,您可以在幾分鐘內(nèi)與您的項(xiàng)目集成。
開始在項(xiàng)目中使用可靠的IP數(shù)據(jù)吧!通過檢測用戶的實(shí)時地理位置,您可以提供個性化數(shù)據(jù),并將各種廣告流式傳輸?shù)讲煌牡乩砦恢谩?zhǔn)備好開始使用IP智能了嗎?現(xiàn)在就報名吧!
原文鏈接:https://blog.apilayer.com/how-do-i-look-up-ip-addresses-with-python-and-flask/