查看: 41|回复: 0

扣丁学堂Python培训之Python3之读取连接过的网络并定位的方法

发表于 2018-7-2 11:25:32

本篇文章扣丁学堂Python培训小编主要是和大家分享一下Python3之读取连接过的网络并定位的方法,文章中会有代码列出供大家详细了解。对Python感兴趣想要学好Python开发技术的小伙伴们随着小编一起来看一下吧。


代码如下:
#!/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!!!
以上就是扣丁学堂Python在线学习小编给大家分享的Python3之读取连接过的网络并定位的方法,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询。扣丁学堂是专业的Python培训机构,不仅有专业的老师和与时俱进的课程体系,还有大量的Python在线教程供学员观看学习,喜欢Python的小伙伴快快行动吧。扣丁学堂Python技术交流群:279521237。


文章转载自:扣丁学堂http://www.codingke.com/


回复

使用道具 举报