我正在使用python3和geolite2,但我发现我无法传递我想要查找的IP地址,并且我收到以下错误。我已经尝试过转换为utf-8和编码,但我得到了同样的错误。
from geoip import geolite2
ip_address = request.access_route[0] or request.remote_addr
print(">>>", ip_address)
ip_bytes = ip_address.encode('utf-8')
loc = geolite2.lookup(ip_bytes)
或
loc = geolite2.lookup(ip_address.encode())
以下错误:
TypeError: 'str' does not support the buffer interface
IP应采用何种格式。在原始文档中,它是string
。
答案 0 :(得分:0)
我建议您尝试使用官方Python geoip2 API或python-geoip-yplan。后者是python-geoip的一个分支,具有更好的Python 3支持。