<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    Python獲取IP地址的三種方法

    時間:2025-03-18 13:58:05 php語言 我要投稿
    • 相關推薦

    Python獲取IP地址的三種方法

      Python由荷蘭數學和計算機科學研究學會的吉多·范羅蘇設計,Python提供了高效的高級數據結構,還能簡單有效地面向對象編程,以下是小編為大家整理的Python獲取IP地址的三種方法,希望對你有所幫助!

      使用撥號上網的話,一般都有一個本地ip和一個外網ip,使用python可以很容易的得到這兩個ip

      使用gethostbyname和gethostbyname_ex兩個函數可以實現

      代碼如下

      import socket

      localIP = socket.gethostbyname(socket.gethostname())#這個得到本地ip

      print "local ip:%s "%localIP

      ipList = socket.gethostbyname_ex(socket.gethostname())

      for i in ipList:

      if i != localIP:

      print "external IP:%s"%i

      獲取本地IP地址

      代碼如下

      #!/usr/bin/python

      import socket

      import struct

      import fcntl

      def getip(ethname):

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

      return socket.inet_ntoa(fcntl.ioctl(s.fileno(), 0X8915, struct.pack(‘256s’, ethname[:15]))[20:24])

      if __name__==’__main__’:

      print getip(‘eth0’)

      方法二,公網地址直接獲取IP

      代碼如下

      #!/usr/bin/env python

      import re,urllib2

      class Get_public_ip:

      def getip(self):

      try:

      myip = self.visit("http://www.111cn.net/")

      except:

      try:

      myip = self.visit("http://www.ip138.com/ip2city.asp")

      except:

      myip = "So sorry!!!"

      return myip

      def visit(self,url):

      opener = urllib2.urlopen(url)

      if url == opener.geturl():

      str = opener.read()

      return re.search('d+.d+.d+.d+',str).group(0)

      if __name__ == "__main__":

      getmyip = Get_public_ip()

      print getmyip.getip()

      【拓展內容】

      Python和JavaScript語言轉換的常用工具

      Transcrypt

      這是一款新近崛起的 Python 到 JS 轉譯器。Transcrypt 對于自身所生成代碼的質量水平做出了令人印象深刻的承諾。首先,它會盡可能多地保留原始的 Python 代碼結構,包括多重繼承以及 lambda 表達式。Python 源代碼也可以直接對 JavaScript 中命名空間內的對象進行調用。如果大家嘗試訪問 Python 中的 document.getElementById,則轉換后的代碼也將在JavaScript 當中切換使用 document.getElementById。

      根據說明文檔的介紹,Transcrypt 是利用 CPython 的抽象語法樹模塊完成這些轉譯任務的,其能夠根據 Python 對自身代碼的解析方式進行編程訪問。盡管該項目目前仍處于 alpha 測試階段,但已經顯示出了非常驚人的吸引力。

      Jiphy

      所謂 Jiphy,代表的是“JavaScript 入,Python 出”——也就是能夠對二者進行雙向轉換。另外,來自兩種語言的代碼都能夠在被轉換為另一種語言之前進行混合。

      Jiphy 目前的最大短板在于其僅支持 Python 的一部分功能集。類以及默認參數尚不受支持,不過裝飾器與例外機制已經可以正常使用。這主要是因為 Jiphy 堅持在源代碼與目標代碼之間采用行對行直接轉譯方式,不過其開發人員也開始著眼于 ES6 中的新功能,旨在將更多高級 Python 功能納入支持范疇。

      Brython

      也許有一天,當 WebAssembly 設想成為現實,那么我們將能夠選擇任何自己偏好的語言進行 Web 開發。而 Brython 對此——或者說至少適用于 Python 3——有著自己的理解:為什么要等?

      Brython 通過一套 JavaScript 庫對 Python 3 中的全部關鍵字以及大多數內置插件進行模擬,從而實現了將 Python 3 版本作為客戶端 Web 編程方案的目標。由 Python 編寫的腳本可以被直接添加到網絡頁面當中,而 Brython 還支持一套高級 Python模塊界面(browser),用于同 DOM 進行執行協作,且該瀏覽器通常可在 JavaScript 中直接完成。

      然而,Brython 也保持了瀏覽器給 JavaScript 代碼帶來的限制——例如不支持對本地文件系統進行處理。

      RapydScript

      RapydScript 承諾“讓 Python 式 JavaScript 代碼不再糟糕。”該項目在概念上類似于 CoffeeScript:以 Python 形式進行代碼編寫,生成 JavaScript 代碼,并同時發揮二者的最佳特性。在 Python 方面,其擁有清晰的語法規則; 而在 JavaScript 方面,其擁有匿名函數、DOM 操作并能夠使用 jQuery 或者 Node.js 內核等現有 JavaScript 庫。

    【Python獲取IP地址的三種方法】相關文章:

    python使用Flask框架獲取用戶IP地址的方法08-26

    python批量生成本地ip地址的方法10-22

    php獲取IP物理地址的方法10-10

    python使用Flask框架獲取用戶IP地址有什么辦法09-07

    python批量生成本地ip地址的方法是什么10-20

    電腦如何自動獲取ip地址06-02

    php通過Chianz.com獲取IP地址與地區的方法08-12

    PHP獲取真實的客戶IP的方法09-01

    php獲取當前url地址的方法10-16

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人