使用Python获取并处理IP的类型及格式方法

公网与私有网络的判断其实十分简单,只要记住私有网络的三个网段。不过,对于记性不好的人或者学识不是很高的机器来说,有一种判断方法还是有必要的。

写如下脚本:

 from IPy import IP

 ip1 = IP('192.168.1.2')

 ip2 = IP('11.12.13.14')

 print("ip1 type: %s" % ip1.iptype())
 print("ip2 type: %s" % ip2.iptype())

 print("ip2 int value: %d" % ip2.int())
 print("ip2 hex value: %s" % ip2.strHex())
 print("ip2 bin value: %s" % ip2.strBin())

 print("IP for 0x1234567: %s" % IP(0x1234567))

运行结果如下:

ip1 type: PRIVATE

ip2 type: PUBLIC

ip2 int value: 185339150

ip2 hex value: 0xb0c0d0e

ip2 bin value: 00001011000011000000110100001110

IP for 0x1234567: 1.35.69.103

从上面的结果可以看出:

1、ip1位私有地址;

2、ip2是公网地址;

3、IP的不同类型可以进行自由转换;

以上这篇使用Python获取并处理IP的类型及格式方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python内置数据类型之列表操作

    数据类型是一种值的集合以及定义在这种值上的一组操作.一切语言的基础都是数据结构,所以打好基础对于后面的学习会有百利而无一害的作用. python内置的常用数据类型有:数字.字符串.Bytes.列表.元组.字典.集合.布尔等 1.什么是列表 lst[#] 通过下标访问,从0开始. ps:如果#超过下标的范围时候会出现IndexError的错误. 如果#为负号,则索引从右边开始,#无论为正负均有范围,超过范围会报错. lst = list(range(0,9)) #生产列表 l1 = lst[3]

  • 通过python将大量文件按修改时间分类的方法

    需求是这样的,我从本科到现在硬盘里存了好多照片,本来是按类别分的,有一天,我突然想,要是能按照时间来分类可能会更好.可以右键查看照片的属性,看它的修改日期,从而分类,但是十几个G的照片手动分类工作量还是很大的,所以想着写个脚本程序来完成这一个工作. 程序主要是获取文件的修改时间,包括年和月,并以此为名创建文件夹,再用递归调用的方式遍历整个文件夹,将每一张照片拷贝到相应的文件夹下. 程序源码如下: #coding:utf-8 import os import sys import os.path

  • python2与python3中关于对NaN类型数据的判断和转换方法

    今天在对一堆新数据进行数据清洗的时候,遇到了一个这样的问题: ValueError: cannot convert float NaN to integer 一开始是这样的,我用的jupyter是python35的,使用DataFrame读入了数据,其中有一列是year,默认读入时是将year这一列转换为了float,所以就有了这样的现象: 年份都是float类型了,看得我强迫症都犯了.于是通过这样的代码来进行强转,于是就报了上面的错误了. df.year = [int(y) for y in

  • python 判断参数为Nonetype类型或空的实例

    Nonetype和空值是不一致的,可以理解为Nonetype为不存在这个参数,空值表示参数存在,但是值为空 判断方式如下: if hostip is None: print "no hostip,is nonetype" elif hostip: print "hostip is not null" else: print " hostip is null" 以上这篇python 判断参数为Nonetype类型或空的实例就是小编分享给大家的全部内

  • python3 面向对象__类的内置属性与方法的实例代码

    0.object类源码 class object: """ The most base type """ def __delattr__(self, *args, **kwargs): # real signature unknown """ Implement delattr(self, name). """ pass def __dir__(self): # real signatu

  • python 保存float类型的小数的位数方法

    python保留两位小数: In [1]: a = 5.026 In [2]: b = 5.000 In [3]: round(a,2) Out[3]: 5.03 In [4]: round(b,2) Out[4]: 5.0 In [5]: '%.2f' % a Out[5]: '5.03' In [6]: '%.2f' % b Out[6]: '5.00' In [7]: float('%.2f' % a) Out[7]: 5.03 In [8]: float('%.2f' % b) Out[

  • Python爬取成语接龙类网站

    介绍 本文将展示如何利用Python爬虫来实现诗歌接龙. 该项目的思路如下: 利用爬虫爬取诗歌,制作诗歌语料库: 将诗歌分句,形成字典:键(key)为该句首字的拼音,值(value)为该拼音对应的诗句,并将字典保存为pickle文件: 读取pickle文件,编写程序,以exe文件形式运行该程序. 该项目实现的诗歌接龙,规则为下一句的首字与上一句的尾字的拼音(包括声调)一致.下面将分步讲述该项目的实现过程. 诗歌语料库 首先,我们利用Python爬虫来爬取诗歌,制作语料库.爬取的网址为:https

  • python中类的属性和方法介绍

    Python-类属性,实例属性,类方法,静态方法,实例方法 类属性和实例属性 #coding:utf-8 class Student(object): name = 'I am a class variable' #类变量 >>> s = Student() # 创建实例s >>> print(s.name) # 打印name属性,因为实例并没有name属性,所以会继续查找class的name属性 Student >>> print(Student.n

  • 使用Python获取并处理IP的类型及格式方法

    公网与私有网络的判断其实十分简单,只要记住私有网络的三个网段.不过,对于记性不好的人或者学识不是很高的机器来说,有一种判断方法还是有必要的. 写如下脚本: from IPy import IP ip1 = IP('192.168.1.2') ip2 = IP('11.12.13.14') print("ip1 type: %s" % ip1.iptype()) print("ip2 type: %s" % ip2.iptype()) print("ip2

  • python获取外网IP并发邮件的实现方法

    第一步:通过ip138来爬取外网ip 第二步:通过python的smtplib模块和email来发送邮件,具体用法去网上搜索, 下面是代码示例: #!/usr/bin/env python #coding:utf-8 import urllib2 import re import smtplib from email.MIMEText import MIMEText from email.Header import Header #################################

  • 分享Python获取本机IP地址的几种方法

    目录 1.使用专用网站 2.使用自带socket库 3.使用第三方netifaces库 1.使用专用网站 获取的是公网IP 网址:http://myip.ipip.net 代码: import requests res = requests.get('http://myip.ipip.net', timeout=5).text print(res) 比较喜欢用这个,在命令窗口也能使用: curl http://myip.ipip.net 2.使用自带socket库 获取的是局域网IP. impo

  • python 获取本机ip地址的两个方法

    第一种: 复制代码 代码如下: import socket import fcntl import struct def get_ip_address(ifname): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) return socket.inet_ntoa(fcntl.ioctl( s.fileno(), 0x8915, # SIOCGIFADDR struct.pack('256s', ifname[:15]) )[20:24]

  • python获取外网ip地址的方法总结

    本文实例总结了python获取外网ip地址的方法.分享给大家供大家参考.具体如下: 一.利用脚本引擎库直接获取 import console; import web.script import inet.http; var jsVm = web.script("JavaScript") jsVm.AddCode( inet.http().get("http://fw.qq.com/ipaddress") ) var ipAddr = jsVm.CodeObject.

  • Python获取linux主机ip的简单实现方法

    本文实例讲述了Python获取linux主机ip的简单实现方法.分享给大家供大家参考,具体如下: python有好几种方法可以获取主机的ip地址.我常用的一种是通过socket.socket().inet_ntoa()来实现,非常方便:但这种方法有个限制就是要把网卡名(比如eth0)作为参数传进来.所以加多了一个条件判断,如果发现以上方法获取ip抛异常时,那就用调起shell命令(ifconfig)和管道,把想要的ip给过滤出来. import socket import fcntl impor

  • Linux下通过python获取本机ip方法示例

    下面介绍在Linux上利用python获取本机ip的方法. 经过网上调查, 发现大致有两种方法, 一种是调用shell脚本,另一种是利用python中的socket等模块来得到,下面是这两种方法的源码: #!/usr/bin/env python #encoding: utf-8 #description: get local ip address import os import socket, fcntl, struct def get_ip(): #注意外围使用双引号而非单引号,并且假设默

  • Python获取当前公网ip并自动断开宽带连接实例代码

    今天写了一个获取当前公网ip并且自动断开宽带连接的文件,和大家分享下. 这个文件的具体用途大家懂的,可以尽管拿去用,不过目前只适用于Windows平台,我的Python版本是2.7的,win32ras模块需要下载pywin32. 代码如下: #!coding: cp936 import win32ras import time,os def Connect(dialname, account, passwd): dial_params = (dialname, '', '', account,

  • 如何用Python获取计算机名,ip地址,mac地址

    获取计算机名 # 获取计算机名,常用的方法有三种,但最常用的是第一种 import os import socket # method one name = socket.gethostname() print(name) # hanser # method two name = os.popen("hostname").read() print(name) # hanser # method three name = os.environ.get("COMPUTERNAME

  • python获取指定目录下所有文件名列表的方法

    本文实例讲述了python获取指定目录下所有文件名列表的方法.分享给大家供大家参考.具体实现方法如下: 这里python代码实现获取文件名列表的功能,可以指定文件中包含的字符,方便提取特定类型的文件名列表: # -*- coding: utf-8 -*- #~ #------------------------------------------------------------------ #~ module:wlab #~ Filename:wgetfilelist.py #~ Funct

随机推荐