我有这个GeoIP地址代码,当我运行此代码时,它显示错误,没有名为GeoIP的模块。这是我的代码:
import sys
import GeoIP
gi = GeoIP.new(GeoIP.GEOIP_MEMORY_CACHE)
with open ('Desktop/trail.txt', 'r') as f:
for line_string in f.readlines():
line = line_string.rstrip()
arr = line.split()
try:
country_code = gi.country_code_by_addr(arr[0])
country_name = "\"" + gi.country_name_by_addr(arr[0]) + "\""
arr.append(country_code)
arr.append(country_name)
except:
arr.append("None")
print ",".join(arr)
这是错误: 第4行,在 gi = GeoIP.new(GeoIP.GEOIP_MEMORY_CACHE) GeoIP.error:[Errno 2]没有这样的文件或目录:'/ usr / local / var / GeoIP / GeoIP.dat'
答案 0 :(得分:0)
您忘记添加GeoIP.dat
数据库,这是您的代码,用于获取信息
从官方发布的Here
GeoIP.dat.gz
”移至/usr/local/var/GeoIP/
右键单击并选择在此处提取或通过以下命令提取:gunzip GeoIP.dat.gz
然后会出现一个名为GeoIP.dat
的文件,将其留在此路径中
现在您在路径/usr/local/var/GeoIP/GeoIP.dat
中拥有数据库文件
尝试再次编译,让我知道是否还有问题。