python获取当前主机ip,python查看ip地址

  python获取当前主机ip,python查看ip地址

  本文主要介绍了几种共享Python获取本地IP地址的方法,并分享了使用专用网站、使用自己的socket库、使用第三方netifaces库等方法。供你参考。

  00-1010 1.使用专门的网站。使用自己的套接字库3。使用第三方netifaces库。

  

目录

  获取公共IP。

  网址:http://myip.ipip.net

  代码:

  导入请求

  RES=requests . get( http://MIP . ipip . net ,timeout=5)。文本

  打印(分辨率)

  比较喜欢用这个,在命令窗口也能使用:

  科尔http://myip.ipip.net

  

1、使用专用网站

  获取局域网IP。

  导入插座

  #函数gethostname()返回当前执行Python的系统的主机名。

  RES=socket . gethostbyname(socket . gethostname())

  打印(分辨率)

  但是上面那个没有获取公有IP,结果不稳定(这里获取的是虚拟机下的IP),不建议使用。

  如果计算机设备有连接到 Internet 的路由,可以使用:

  导入插座

  s=socket.socket(socket。AF_INET,socket。SOCK_DGRAM)

  s.connect((8.8.8.8 ,80))

  print(s.getsockname()[0])

  这个获得的是局域网IP:

  可以ipconfig看一下:

  另一个适用于所有接口。它也适用于所有公共、私有和外部知识产权。这种方法在Linux、Windows和OS X上运行良好。

  导入插座

  def提取_ip():

  st=socket.socket(socket。AF_INET,socket。SOCK_DGRAM)

  尝试:

  st.connect((10.255.255.255 ,1))

  IP=st.getsockname()[0]

  除了例外:

  IP=127.0.0.1

  最后:

  圣克洛斯()

  返回IP

  打印(extract_ip())

  如果注意:的局域网IP本身就是公网IP,那么获得的IP可以认为是公网IP。

  

2、使用自带socket库

  获取局域网IP。

  netifaces模块用于提供有关网络接口及其状态的信息。

  代码:

  如果没有,请先安装库。

  pip3安装netifaces

  然后使用:

  从netifaces导入接口,ifaddresses,AF_INET

  对于接口()中的ifaceName :

  I addresses(ifaceName)中I的addresses=[i[addr]。setdefault(AF_INET,[{addr:No IP addr}] )]

  打印()。加入(地址))

  关于分享Python获取原生IP地址的方法的这篇文章到此结束。更多关于Python获取原生IP的方法,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: