Python3之读取连接过的网络并定位的方法
更新时间:2018年04月22日 10:47:08 作者:Quincy379
下面小编就为大家分享一篇Python3之读取连接过的网络并定位的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
如下所示:
#!/usr/bin/python # coding=utf-8 import json from urllib.request import urlopen from winreg import * def val2addr(val): addr = "" for ch in val: addr += ("%02x " % ord(ch)) addr = addr.strip(" ").replace(" ", ":")[0:17] return addr def printNets(): net = r"SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\Unmanaged" key = OpenKey(HKEY_LOCAL_MACHINE, net) print(r"\nNetworks You have Joined.") for i in range(100): try: guid = EnumKey(key, i) netKey = OpenKey(key, str(guid)) (n, addr, t) = EnumValue(netKey, 5) (n, name, t) = EnumValue(netKey, 4) macAddr = val2addr(addr) netName = name jsondata = urlopen('http://api.cellocation.com:81/wifi/?mac=' + macAddr + '&output=json').read() data = json.loads(jsondata)['address'] if data == '': address = 'unknow' else: address = data print('[+] ' + netName + ' ' + macAddr + ' ' + address) CloseKey(netKey) except: break def main(): printNets() input('please press enter') if __name__ == '__main__': main()
内置模块:
python2中的_winreg在python3中改名为winreg!!!
以上这篇Python3之读取连接过的网络并定位的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
详解如何利用Pytest Cache Fixture实现测试结果缓存
这篇文章主要为大家详细介绍了如何利用Pytest Cache Fixture实现测试结果缓存,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起了解一下2023-09-09
最新评论