欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python獲取ip地址的3種方法代碼

 更新時間:2023年10月28日 09:32:40   作者:Demons_皮  
在Python中獲取IP地址的方法有很多種,這篇文章主要給大家介紹了關于Python獲取ip地址的3種方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

方法一

#獲取本機IP地址
def get_local_ip():
    # s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    # s.connect(('8.8.8.8', 80))
    # ip = s.getsockname()[0]
    # s.close()
    ip = socket.gethostbyname(socket.gethostname())
    return ip

運行結果:

D:\Python3.8.6\python.exe D:/PythonWorkSpace/someip/Common/get_IP_adress.py
192.168.42.44

Process finished with exit code 0

方法二

#獲取公網IP地址
def get_public_ip():
    response = requests.get("http://httpbin.org/ip")
    data = response.json()
    ip = data['origin']
    return ip

運行結果:

D:\Python3.8.6\python.exe D:/PythonWorkSpace/someip/Common/get_IP_adress.py
223.76.212.244

Process finished with exit code 0

方法三

# 獲取本機所有 IP 地址
def get_all_ip():
    hostname = socket.gethostname()
    ip_list = []
    # 獲取IP地址信息
    addr_infos = socket.getaddrinfo(hostname, None)
    for addr in addr_infos:
        ip_list.append(addr[4][0])
    # print(ip_list)
    return ip_list

運行結果:

D:\Python3.8.6\python.exe D:/PythonWorkSpace/someip/Common/get_IP_adress.py
fe80::f439:ac0:9050:c9f
fe80::1d73:c1cf:c1ca:6d0d
fe80::9d23:6620:a01:aa33
fe80::856d:dbe3:ada3:a32a
192.168.42.44
172.29.11.5
192.168.114.1
192.168.64.1

Process finished with exit code 0

附:本機IP與127.0.0.1及l(fā)ocalhost的區(qū)別

127.0.0.1

  • 環(huán)回地址是主機用于向自身發(fā)送通信的一個特殊地址。同一臺主機上的兩項服務若使用環(huán)回地址而非分配的主機地址,就可以繞開TCP/IP協議棧的下層。

  • IPv4的環(huán)回地址為:127.0.0.0到127.255.255.255都是環(huán)回地址

  • 當操作系統初始化本機的TCP/IP協議棧時,設置協議棧本身的IP地址為127.0.0.1(保留地址),并注入路由表

127.0.0.1是保留地址之一,來檢驗本機TCP/IP協議棧,ping 127.0.0.1一般作為測試本機TCP/IP協議棧正常與否的判斷之一。

localhost

localhost首先是一個域名,也是本機地址,它可以被配置為任意的IP地址。不過通常情況下都指向:(如下)

  • IPv4:表示 127.0.0.1

  • IPv6:表示 [::1]

本機IP

本機IP,可以理解為本機有三塊網卡:

  • 一塊網卡叫做loopback(虛擬網卡)
  • 一塊叫做ethernet(有線網卡)
  • 一塊叫做wlan(你的無線網卡)

聯網,網卡傳輸,受防火墻和網卡限制

解決方法

獲取本機IP有其它的方法:

import os
import socket

gw = os.popen("ip -4 route show default").read().split()
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect((gw[2], 0))
ipaddr = s.getsockname()[0]
gateway = gw[2]
host = socket.gethostname()

print("IP:", ipaddr, " GW:", gateway, " Host:", host)

或者

import os
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("8.8.8.8", 80))
ip = s.getsockname()[0]

print("IP:", ip) 

總結 

到此這篇關于Python獲取ip地址的3種方法的文章就介紹到這了,更多相關Python獲取ip地址內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python互斥鎖、加鎖、同步機制、異步通信知識總結

    python互斥鎖、加鎖、同步機制、異步通信知識總結

    本篇文章給大家詳細講述了python互斥鎖、加鎖、同步機制、異步通信相關知識點,對此有興趣的朋友收藏下。
    2018-02-02
  • Django model class Meta原理解析

    Django model class Meta原理解析

    這篇文章主要介紹了Django model class Meta原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • 如何一鍵理清大型Python項目依賴樹

    如何一鍵理清大型Python項目依賴樹

    這篇文章主要介紹了如何一鍵理清大型Python項目依賴樹,文章圍繞主題相關資料展開詳細的內容介紹,感興趣的小伙伴可以參考一下
    2022-06-06
  • 關于PyQt5主窗口圖標顯示問題匯總

    關于PyQt5主窗口圖標顯示問題匯總

    這篇文章主要介紹了關于PyQt5主窗口圖標顯示問題匯總,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 基于Django快速集成Echarts代碼示例

    基于Django快速集成Echarts代碼示例

    這篇文章主要介紹了基于Django快速集成Echarts代碼示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12
  • 淺談pandas篩選出表中滿足另一個表所有條件的數據方法

    淺談pandas篩選出表中滿足另一個表所有條件的數據方法

    今天小編就為大家分享一篇淺談pandas篩選出表中滿足另一個表所有條件的數據方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • 詳解Python+Pyecharts實現漏斗圖的繪制

    詳解Python+Pyecharts實現漏斗圖的繪制

    漏斗圖是一個簡單的散點圖,反映研究在一定樣本量或精確性下單個研究的干預效應估計值。本文將用Python Pyecharts實現漏斗圖的繪制,需要的可以參考一下
    2022-06-06
  • 利用python打開攝像頭及顏色檢測方法

    利用python打開攝像頭及顏色檢測方法

    今天小編就為大家分享一篇利用python打開攝像頭及顏色檢測方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • Python數據序列化技術總結

    Python數據序列化技術總結

    在現代軟件開發(fā)中,數據序列化是一個關鍵環(huán)節(jié),它允許我們將復雜的數據結構轉換為可存儲或可傳輸的格式,,Python提供了多種數據序列化技術,每種技術都有其獨特的性能優(yōu)勢和適用場景,本文將詳細介紹幾種強大的Python數據序列化技術,需要的朋友可以參考下
    2025-03-03
  • Python BeautifulSoup基本用法詳解(通過標簽及class定位元素)

    Python BeautifulSoup基本用法詳解(通過標簽及class定位元素)

    這篇文章主要介紹了Python BeautifulSoup基本用法(通過標簽及class定位元素),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08

最新評論