我正在寻找一个好的免费API,至少可以让我知道IP的国家。我发现了一些可行的工作,但他们似乎不可靠。主要问题是我必须每天提出约50000到100000个请求。
是否有一些很好的脚本可以安装在我的服务器上并使用它来代替API?
发布于 2018-04-03 08:32:33
您可能会尝试使用IPInfoDB,因为我发现它很有用。同一站点的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>"
%>
发布于 2018-04-03 09:21:47
你可以结帐MaxMind的geoIP数据库:它提供了IP到地理检测的粒度级别,例如IP到国家,IP到本地等,你可以通过他们的API使用它们,或者可以下载IP到地理映射的整个数据库。
最简单和最便宜的方式是购买GeoIP国家数据库http://www.maxmind.com/en/country,你可以在本地保存为一个文件,然后可以使用任何软件包查询。
以下是Ruby中的GemIP数据示例:https://github.com/cjheath/geoip
https://stackoverflow.com/questions/-100001501
复制相似问题