首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Python获取眩晕信息

使用Python获取眩晕信息
EN

Stack Overflow用户
提问于 2022-01-20 14:46:10
回答 2查看 337关注 0票数 0

我试图用Python获得外部ip &端口。

我使用:pip install pystun

代码语言:javascript
运行
复制
import stun
stun.get_ip_info()

但我错了:

代码语言:javascript
运行
复制
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.8/dist-packages/stun/__init__.py", line 252, in get_ip_info
    nat_type, nat = get_nat_type(s, source_ip, source_port,
  File "/usr/local/lib/python3.8/dist-packages/stun/__init__.py", line 186, in get_nat_type
    _initialize()
  File "/usr/local/lib/python3.8/dist-packages/stun/__init__.py", line 93, in _initialize
    dictValToAttr.update({items[i][1]: items[i][0]})
TypeError: 'dict_items' object is not subscriptable

我怎么才能解决呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-01-20 14:54:00

那是因为pystun已经过时了。pystun不支持最近版本的python。相反,安装pystun3

代码语言:javascript
运行
复制
pip uninstall pystun # uninstall already installed pystun module
pip install pystun3
代码语言:javascript
运行
复制
import stun
print(stun.get_ip_info())
#('Symmetric NAT', '111.111.11.111', 1027)

或者,您可以获得外部IP地址,如下所示:

代码语言:javascript
运行
复制
import http.client
conn = http.client.HTTPConnection("ifconfig.me")
conn.request("GET", "/ip")
print(conn.getresponse().read())

有关更多信息,请参阅https://ru.stackoverflow.com/questions/133137/

票数 1
EN

Stack Overflow用户

发布于 2022-01-20 14:56:30

最初的Pystun并不是支持 Python3,有一个支持Python3的分叉,您可以使用pip install pystun3 (Pypi上的pystun3)安装它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70788249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档