IP解析计算机名称

时间:2022-09-24 20:27:54
#-*- coding: UTF-8 -*-
import subprocess,sys,threading
reload(sys)
sys.setdefaultencoding('utf-8') def ip2name(mutex,ip,fp,kw):
nbtstatchild = subprocess.Popen(['nbtstat','-A',ip],shell=True,stdout=subprocess.PIPE)
while nbtstatchild.poll() == None:
rsts = nbtstatchild.stdout.readlines()
if len(rsts) <> 0:
for i in rsts:
ii = i.strip().decode('GBK')
if ii.find(kw) <> -1:
if mutex.acquire(1):
with open(fp,'ab') as fw:
fw.write(ip)
for line in rsts:
fw.write(line.strip().decode('GBK'))
mutex.release()
else:
pass if __name__ =='__main__':
lst=[]
bb=range(4,6) #IP第三位
bb.extend([69,71,74]) #IP第三位
dd=range(2,255) #IP第四位
for b in bb:
for d in dd:
ip = '192.168.' + str(b) + '.' + str(d)
lst.append(ip) fp='d:\\ip.txt' #将结果写到该文件中
kw='XS' #要查找的关键字
tnum=30 #线程数量 mutex = threading.Lock()
for i in range(0,len(lst),tnum):
threads=[]
for IP in lst[i:i+tnum]:
print IP
t = threading.Thread(target=ip2name,args=(mutex,IP,fp,kw))
t.setDaemon(True)
t.start()
threads.append(t)
for t in threads:
t.join()

IP解析计算机名称的更多相关文章

  1. c&num; 遍历局域网计算机(电脑)获取IP和计算机名称

    c#可以遍历局域网计算机,获取全部计算机的名称和IP地址,网上提供了相关的几种方法,并对效率进行了比较,但是没有对各种方法进行比较,以确定可以使用的情况.这篇文章将对这几种方法进行分析,以帮助了解各种 ...

  2. Ubuntu修改计算机名称造成无法解析主机问题解决方法

    在通过修改/etc/hostname文件方法修改计算机名称后导致有时候出现无法解析主机的问题. 解决方法: 找到/etc/hosts文件,打开找到如下一行 127.0.1.1       旧主机名 将 ...

  3. 使用Powershell实现计算机名称及IP地址修改

    我的第一篇博客分享,写这个代码的用途是在公司Ghost完系统之后去修改本地计算机名称及IP 地址,用Powershell实现. 1. 代码第一部分,检查Powershell是否已管理员权限执行,如果不 ...

  4. IP地址、计算机名称、MAC地址如何获取

    以下的操作都在“命令提示窗口”中操作. 已知IP,如何获得计算机名称 方法(1): 使用ping -i ip地址 例如已知地址为192.168.1.168. 那么使用ping -i 192.168.1 ...

  5. IP工具类-自己动手做个ip解析器

    IP工具类-自己动手做个ip解析器 一.资料准备 导入依赖包:

  6. 通过js获取计算机内网ip,计算机名,mac地址

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...

  7. 根据IP查找计算机名

    查找10.10.10.X段的计算机名称 $r="10.10.10." $s=1..254 foreach ($a in $s) { $ip = $r + [string]$a $i ...

  8. Linux更改计算机名称

    1.修改:vim /etc/hosts 2.修改:vim /etc/sysconfig/network 3.重启:reboot 如不重启可以输入:hostname  新改的计算机名称,然后su

  9. 重命名计算机名称导致TFS版本管理下的工作区问题的修复

    1.问题 若在本地已有工作区之后,此时修改计算机名称重启生效后,打开本地的项目解决方案,输出窗口会提示如下图: 2.解决 输入命令:tf workspaces /collection:http://1 ...

随机推荐

  1. Windows常用技巧集锦

    1. Word中如何消除回车符 文件—选项—显示—勾掉段落标记 2. Windows不重启就使环境变量修改生效 以修改环境变量“PATH”为例,修改完成后,进入DOS命令提示符,输入:set PATH ...

  2. printf&lpar;&quot&semi;&percnt;&ast;s&percnt;s&percnt;&ast;s&quot&semi;,——)是什么?

    我们可能知道scanf里用*修饰符,是起到过滤读入的作用.比如一个有三列数值的数据,我只想得到第2列数值,可以在循环里用scanf(“%*d%d%*d”, a[i])来读入第i行的第2个数值到a[i] ...

  3. Android使用百度地图出现闪退及定位时显示蓝屏问题

     目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题     1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.x ...

  4. mysql 分组内 排序

    mysql 分组内 排序 类似于 sqlserver over partition by   因为mysql中木有sqlserver over partition by这个函数,要从sqlserver ...

  5. About cookie

    1.cookie 是一种发送到客户浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个WEB站点会话间持久的保持数据. 2.session其实指的就是访问者从到达某个特定主页到离开为止的那段时间. ...

  6. js获取世界不同时区的当前时间

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  7. css左右等高问题

    先看看预览效果:http://lgdy.whut.edu.cn/index.php?c=home&a=detail&id=3394 再来谈谈css左右等高的应用场景:在内容管理系统(c ...

  8. EGL 1&period;0 学习笔记

    http://hi.baidu.com/leo_xxx/item/b01b1fc29abff355ac00ef5c 基本概念 EGL是OpenGL ES与本地Window系统之间的桥梁.EGL创建渲染 ...

  9. SecureCRT 会话空闲时超时退出处理

    参考文章:http://www.cnblogs.com/xuxm2007/archive/2011/04/21/2023611.html http://yunwei.blog.51cto.com/38 ...

  10. poj 2992 Divisors &lpar;素数打表&plus;阶乘因子求解)

    Divisors Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9617   Accepted: 2821 Descript ...