【发布时间】:2016-08-27 02:25:48
【问题描述】:
我编写了一个脚本,它通过“0”网络 (192.168.0.*) 中的所有本地 IP。
我使用socket.gethostbyaddr(ip_modified_by_the_loop_each_time) 的循环。
循环返回 3 个设备的主机名。 现在,我发现它(至少)找不到 4 个设备。
- 我的 Windows 笔记本电脑,而不是我的 Android 手机。它确实找到了
- 一台 MacBook,不是 iMac,不是另一台 MacBook。它也没有
- 查找任何电话。
我知道所有设备都在线并且有一个 IPv4 地址。
我可以很好地 ping 它们,它的响应很好。但是当我使用socket.gethostbyaddr(ip_modified_by_the_loop_each_time) 时,它会抛出一个错误。
我使用try:/except: 语句来绕过错误,但它仍然无法通过IP 找到我的手机并获取主机名,但我知道它在那里。
我正在使用 python 3.3
为什么会这样,如何解决?
谢谢。
【问题讨论】:
标签: sockets python-3.x networking ip-address hostname