使用python3的python2库

时间:2015-12-03 14:11:48

标签: python python-3.x geolocation ip

我正在使用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

http://pythonhosted.org/python-geoip/

1 个答案:

答案 0 :(得分:0)

我建议您尝试使用官方Python geoip2 APIpython-geoip-yplan。后者是python-geoip的一个分支,具有更好的Python 3支持。