转载链接:https://blog.csdn.net/u013042248/article/details/53165508 0x01 代码思路: 利用二进制遍历: 1.将IP地址分割,每一块转换为8位二进制代码 2.将32位二进制代码转化为十进制,结束地址的十进制减去开地址的十进制,就可以得到之间的IP个数 3.从开始地址起,对其十进制数依次加一,再将其转化为二进制,即可得到之间某一IP的二进制代码 4.将这一IP的二进制按8位分割,每8位转化为一个十进制数,加上”.”,即可得到最终的IP 0…
准备工作 要关联IP与物理位置,我们需要有一个包含这样对应关系的数据库. 我们可以使用开源数据库GeoLiteCity,它能够较为准确地把IP地址与所在城市关联起来 下载地址:http://dev.maxmind.com/geoip/legacy/geolite/ 下载之后我们解压:xz -d GeoLiteCity.dat.xz,如:/My/lib/ip/GeoLiteCity.dat 安装pygeoip库.这个库用于对GeoLiteCity数据库的查询 代码: #!/usr/bin/pyth…
话不多说,直接上代码吧. import requests def getIpAddr(url): response = requests.get(url) response.encoding=response.apparent_encoding content = response.text #print(len("四川省成都市 电信")) python 汉字算一个字节 #print(type(content)) str = content[content.find("Whw…
现在有一道题目,要求利用python中re模块来匹配ip地址,我们应如何着手? 首先能想到的是ip地址是数字,正则表达式是如何匹配数字的呢? \d或[0-9] 对于这个问题,不要一下子上来就写匹配模式,应该一步步分解,把复杂的问题简单化 比如ip地址,我们可以总结一下规律 1. 它是一个字符串 2. 字符串内部是由4个1-3位的数字和3个.组成 3. 数字的范围是0-255 接下来,我们先试一下匹配第1个数字 第一步:尝试匹配192.168.100.123中的192 >>> import…
#网段可用IP地址 #!/bin/sh ip= " ]; do .$ip -c |grep -q "ttl=" && echo "10.86.87.$ip yes" || echo "10.86.87.$ip no" ip=`"` done 网络管理员太牛逼,IP地址没有管理,要用的话,自己ping一下,我也是醉了,上面的脚本可以让我快速找到我需要的IP地址. 这样的网络管理员不要也罢...…
1.使用正则表达式 首先分析IP地址的组成,十进制的合法IP地址由32位数字组成 使用.分割开 每个分组可出现的情况: 第一个分组: 1-9:一位数字 10-99:两位数字 100-199:三位数字且以1开头 200-249 250-255 其余分组: 0-9 10-99 100-199 200-249 250-255 #coding=utf8 import IPy,re f1=open(r'D:\sectool\venv\iplist.txt',mode='r') def is_ip(ipAd…
获取计算机名 # 获取计算机名,常用的方法有三种 import os import socket # method one name = socket.gethostname() print(name) # DESKTOP-S3BGVQN # method two name = os.popen("hostname").read() print(name) # DESKTOP-S3BGVQN # method three name = os.environ.get("COMP…
问题描述 主机1:发布端 阿里云服务器--有公网ip 主机2:订阅端 笔记本--无公网ip 数据量很小,主要是熟悉发布订阅的操作流程. 主机2仅仅作为主机1的本地备份,要求修改云服务器上数据后,能通过sql server的发布订阅功能将本地数据同步. 底下没有一步一步介绍,一步一步的,可以看下面这篇 https://blog.csdn.net/u012861467/article/details/76411216 -----------------------------------------…
#encoding=utf-8 #参考csdn某篇文章 import socket def get_host_ip(): """ 查询本机ip地址 :return: ip """ try: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(('8.8.8.8', 80)) ip = s.getsockname()[0] finally: s.close() return…
import socket # 查看当前主机名 print('当前主机名称为 : ' + socket.gethostname()) # 根据主机名称获取当前IP print('当前主机的IP为: ' + socket.gethostbyname(socket.gethostname())) # Mac下上述方法均返回127.0.0.1 # 通过使用socket中的getaddrinfo中的函数获取真真的IP # 下方代码为获取当前主机IPV4 和IPV6的所有IP地址(所有系统均通用) add…