我正在寻找一个好的免费API,至少会返回IP的国家。 我发现了几个将工作,但他们似乎是不可靠的。 主要问题是我必须每天提出约50000-100000个请求。良好的地理定位API由IP
是否有一些很好的脚本可以安装在我的服务器上并使用它来代替API? 谢谢
我正在寻找一个好的免费API,至少会返回IP的国家。 我发现了几个将工作,但他们似乎是不可靠的。 主要问题是我必须每天提出约50000-100000个请求。良好的地理定位API由IP
是否有一些很好的脚本可以安装在我的服务器上并使用它来代替API? 谢谢
您可以尝试使用IPInfoDB,因为我发现它很有用。
的API返回的IP地址(国家,地区,城市,邮编 ,纬度,经度)和XML格式 相关的时区的位置。您可以使用PHP,Javascript,Ruby, Python和ASP查找以下代码示例。
来自同一个站点有,我可以安装在我的服务器上,并用它 的API,而不是一些好的剧本?
ASP例如
<%
'Get visitor IP
Dim UserIPAddress
UserIPAddress = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If UserIPAddress = "" Then
UserIPAddress = Request.ServerVariables("REMOTE_ADDR")
End If
%>
<%
'Set API key
api_key = "<your_api_key>"
%>
<%
'Get info and print
myxml="http://api.ipinfodb.com/v3/ip-city/?key="&api_key&"&ip=" &UserIPAddress&"&format=xml"
set xml = server.CreateObject("MSXML2.DOMDocument.6.0")
xml.async = "false"
xml.resolveExternals = "false"
xml.setProperty "ServerHTTPRequest", true
xml.load(myxml)
response.write "<p><strong>First result</strong><br />"
for i=0 to 10
response.write xml.documentElement.childNodes(i).nodename & " : "
response.write xml.documentElement.childNodes(i).text & "<br/>"
NEXT
response.write "</p>"
%>
还检查了Maxmind
ipinfodb的链接返回404,请参阅https://ipdata.co我们是一个更多的数据点更近的服务。 – Jonathan
您可以检出的MaxMind为GEOIP数据库:\他们提供IP到地理检测不同级别的粒度,例如IP到国家,IP到地区等。您可以通过他们的API使用它们,也可以下载整个IP到地理映射数据库。
最简单和最便宜的方式是购买GeoIP国家数据库http://www.maxmind.com/en/country,您可以将它们保存为本地文件,然后可以使用您的语言风格喜欢的任何软件包查询。
下面是Ruby的一个例子宝石读取GeoIP的数据:https://github.com/cjheath/geoip
这不符合海报的“免费”要求:[费用](https://www.maxmind.com/zh/geoip2-precision-services)。 – 10basetom
他们有免费版本。 –
使用的https://geoip-db.com IPV4和IPv6支持的服务。 –
IPLocate.io提供了一个免费的API:['https://www.iplocate.io/api/lookup/8.8.8.8'](https://www.iplocate.io/api/lookup/8.8.8.8) - 免责声明:我运行这项服务。 – ttarik
您可以尝试免费的IP地理定位API:https://geoipify.whoisxmlapi.com/ – user121196