这是我的场景。我希望能够用python编写一个脚本,当输入IP地址时,它会在API上查找该IP地址,并返回结果。有人能告诉我一个很好的工作查找API的代码。例如,这是hostip:
import urllib
response = urllib.urlopen('http://api.hostip.info/get_html.php?ip=12.215.42.19&position=true').read()
print(response)
然而,hostIP的数据库非常小,无法返回许多位置。
我在freegeop.net上取得了巨大成功。他们提供了一个公共(免费)API,或者你可以在自己的服务器上运行它。
简单代码示例:
import urllib
response = urllib.urlopen('http://freegeoip.net/json/1.2.3.4').read()
print(response)
您可以查看userinfo.io.
发布GET http://api.userinfo.io/userinfos
将返回您所要求的所有信息。您也可以在参数中指定IP地址:GET http://api.userinfo.io/userinfos?ip_address=888.888.888.888
。
回复如下:
{
request_date: "2014-09-18T04:11:25.154Z",
ip_address: "192.77.237.95",
position: {
latitude: 37.7758,
longitude: -122.4128,
accuracy: 3 // This is the accuracy radius, in kilometers
},
continent: {
name: "North America",
code: "NA",
},
country: {
name: "United States",
code: "US",
},
city: {
name: "San Francisco",
code: "94103"
}
}