为了账号安全,请及时绑定邮箱和手机立即绑定

EC2 服务器中的 Python Geoip2 maxminddb.reader 错误

EC2 服务器中的 Python Geoip2 maxminddb.reader 错误

泛舟湖上清波郎朗 2023-07-27 10:16:18
您好,我遇到以下代码的问题。PS:它在我的本地计算机上运行良好,但在服务器中面临问题。import geoip2.databasedef get_geo_city_from_ip(ip="103.148.20.109"):    try:        reader = geoip2.database.Reader('GeoLite2-City.mmdb')        response = reader.city(ip)        city=response.city.name        reader.close()        return city    except Exception as e:        return Nonea = get_geo_city_from_ip()print("City ####",a)错误Traceback (most recent call last):  File "test.py", line 2, in <module>    import geoip2.database  File "/var/www/html/geo/test/lib/python3.5/site-packages/geoip2/database.py", line 10, in <module>    import maxminddb  File "/var/www/html/geo/test/lib/python3.5/site-packages/maxminddb/__init__.py", line 5, in <module>    import maxminddb.reader  File "/var/www/html/geo/test/lib/python3.5/site-packages/maxminddb/reader.py", line 36    _buffer: Union[bytes, FileBuffer, "mmap.mmap"]           ^SyntaxError: invalid syntax软件包和版本 Python 3.5.2 aiohttp==3.6.2 async-timeout==3.0.1 attrs==20.2.0 certifi==2020.6.20 chardet==3.0.4 geoip2==4.0.2 idna==2.10 idna -ssl==1.1.0 maxminddb==2.0.2 multidict==4.7.6 pkg-resources==0.0.0 requests==2.24.0 simplegeoip2==1.0.2 Typing-extensions==3.7.4.3 urllib3== 1.25.10 亚尔==1.5.1
查看完整描述

2 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

我更改了 geoip2==2.9.0 maxminddb==1.4.1 后它就可以工作了



查看完整回答
反对 回复 2023-07-27
?
万千封印

TA贡献1891条经验 获得超3个赞

你在本地机器上使用 python 3.7+ 吗?

python 3.5 中不支持注释 var 类型。

就像错误信息一样。

 _buffer: Union[bytes, FileBuffer, "mmap.mmap"]

在你的ec2服务器中使用python 3.7+,一切正常。


查看完整回答
反对 回复 2023-07-27
  • 2 回答
  • 0 关注
  • 102 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信