查找 IP 地址的地理位置






4.56/5 (5投票s)
关于如何查找 IP 地址的地理位置的提示。
引言
我们有时需要查明 IP 地址的位置,以便在我们的网站上以某种方式使用它。本文将向您展示如何通过 locatorhq.com 提供的 API 获取 IP 地址的位置。此 API 的使用非常简单且免费。我将向您展示如何使用 API 并在网页上实现代码。
如何获取 API 密钥?
首先,您需要访问 http://www.locatorhq.com 并使用您的姓名和电子邮件地址注册。不用担心,它是免费的。一个包含您的用户名的 API 密钥将被发送到您的电子邮件地址。获得这些信息后,您就可以开始使用 API 了。
如何使用 API?
这是 locatorHQ API 基本调用的样子
http://api.locatorhq.com/?user=YOURUSERNAME&key=YOURAPIKEY&ip=IPADDRESSTOLOOKUP
这里
user = your username registered with the website
key = your API key
ip = ip address to look up
另一个参数是 format
,您可以用它来指定您想要的输出格式。
http://api.locatorhq.com/?user=YOURUSERNAME&key=YOURAPIKEY&ip=IPADDRESSTOLOOKUP&format=xml
或者
http://api.locatorhq.com/?user=YOURUSERNAME&key=YOURAPIKEY&ip=IPADDRESSTOLOOKUP&format=text
或者
http://api.locatorhq.com/?user=YOURUSERNAME&key=YOURAPIKEY&ip=IPADDRESSTOLOOKUP&format=json
目前,JSON 格式似乎还不可用。如果您不使用 format
参数,API 会以 TEXT 格式转储输出。
让我们在这里举个例子,让我们查找 Google IP 地址的位置。在您的浏览器中输入http://api.locatorhq.com/?user=Username&key=APIKEY&ip=74.125.236.196。
输出如下
US,United States,California,Mountain View,34.305,-86.2981
这是输出的分解
国家代码 | US |
国家 | United States |
区域 | 加利福尼亚州 |
城市 | 山景城 |
纬度 | 34.305 |
经度 | -86.2981 |
希望到目前为止您能跟上。我们将看到如何使用 XML 格式。
以下是如何指定格式:http://api.locatorhq.com/?user=Username&key=APIKEY&ip=74.125.236.196&format=xml
<ip2locationapi><countryCode>US</countryCode>
<countryName>United States</countryName><region>California</region><city>Mountain View</city>
<lattitude>34.305</lattitude><longitude>-86.2981</longitude></ip2locationapi>
好了,现在我们知道如何使用 API 了,所以我们准备好在我们的网页上使用 PHP 了。这是 PHP 代码,它将告诉网页的访问者他/她的位置
<?php
$ipaddress = $_SERVER['REMOTE_ADDR']; //ip address
$locationstr="http://api.locatorhq.com/?user=myusername&key=myAPIkey&ip=";
$locationstr = $locationstr.$ipaddress."&format=xml";
//loading the xml file directly from the website
$xml = simplexml_load_file($locationstr);
$countrycode = $xml->countryCode; //country code
$countryname = $xml->countryName; //country name
$region = $xml->region; //region name
$city = $xml->city; //city name
$lattitude = $xml->lattitude; //city latitude
$longitude = $xml->longitude; //city longitude
//$browsername = $xml->browserName; //browser name
echo "Location information for <b>".$ipaddress."<br/><br/>";
echo "Country Code: ".$countrycode."<br/>";
echo "Country: ".$countryname."<br/>";
echo "Region: ".$region."<br/>";
echo "City: ".$city."<br/>";
echo "Lattitude: ".$lattitude."<br/>";
echo "Longitude: ".$longitude."<br/>";
?>
这对我有何用处?
好吧,您实际上可以以任何您希望的方式使用它,并且您可以发挥您的想象力,但这里有一些常见的用途
- 您可以个性化网页,并以访问者所在地区的语言呈现它。
- 您可以使用此信息来监控访问您网站的网络流量。这有助于您自定义网站,并允许您展示在该地区销售更多的产品。
- 如果您的网站上有广告,那么您可以展示那些适用于访问者所在地区并且更受欢迎的广告。
- 您可以使用此信息帮助访问者找到最近的商店和服务中心位置,从而避免客户搜索此信息的许多麻烦。
- 关于安全性,例如,您的系统管理员知道某个特定区域的黑客组织决心破坏他们沿途的任何网站。如果发生可疑情况,您可以使用此信息来阻止这些 IP 地址。
您可以利用此信息做更多的事情。
关注点
当我第一次看到这个东西并使用它时,它对我来说简直太棒了。我真的很喜欢这个,所以我决定分享这个信息。我知道很多人可能已经知道了,但对于那些不知道的人,开始使用它吧。它简直太棒了。我不是任何方面的专家,所以您的评论和建议对我来说很有价值。
感谢阅读。
如果您有任何问题或建议,请发送电子邮件至 shine_hack@yahoo.com。