基于Python构造Wake on Lan网络唤醒WOL脚本
2024-07-05
分类: 分享 (评论)
import socket
import time
import struct
# wake on lan
def wake_up(mac, broadcast="255.255.255.255", port=9):
print("=> 开始唤醒", mac, broadcast, port)
if len(mac) != 17:
raise ValueError("网卡格式有误,请使用格式:'XX-XX-XX-XX-XX-XX'")
mac_address = mac.replace("-", '')
data = ''.join(['FFFFFFFFFFFF', mac_address * 20]) # 构造原始数据格式
send_data = b''
# 把原始数据构造为16进制字节数组,
for i in range(0, len(data), 2):
send_data = b''.join([send_data, struct.pack('B', int(data[i: i + 2], 16))])
print("-> 构造数据", send_data)
# 通过socket广播发送
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
for i in range(10): # 为避免失败,间隔广播多次
print("-> 尝试唤醒", i+1)
sock.sendto(send_data, (broadcast, port))
time.sleep(1)
print("=> 唤醒结束", mac, broadcast, port)
sock.close()
except Exception as e:
print(e)
# start
if __name__ == '__main__':
wake_up(mac='F4-8E-38-A1-46-46', broadcast='172.33.30.1', port=9)
基于BitLocker和Windows计划任务为硬盘自动加密上锁
2024-05-30
分类: 分享 (评论)
如果我们需要对某个磁盘进行加密,那么windows自带的BitLocker锁将是一个非常好用的功能。一般来说磁盘会在电脑重启后自动上锁,但若需要每天定时给磁盘上锁,或电脑注销账号后自动上锁,那么配合Windows计划任务功能可以实现这一点。
战地2联机平台 BF2Net(一款基于爬虫技术构建的BF2联机搜索工具)
2024-05-28
分类: 分享 (评论)
战地2联机平台(BF2Net)这款软件是为了我曾经热爱的的一款游戏《战地风云2》设计的,因为这款游戏的官方在2014停服了,停服之后得益于游戏的开放性,还有一些游戏爱好者仍在搭建一些可供联机的占地2游戏房间,而由于这种私服星星点点比较混乱,加上自己平时挺无聊的,而且也热衷于在这个领域露两手,所以开发了这款软件。
Excel表格批量将单元格内容按特定字符转换为行
2024-05-28
分类: 分享 (评论)
工作需要将一个Excel中大概有几百行,其中某一列中按/字符分割的很长的内容,需要将这个内容转换为行便于分析。因此这个Excel宏就非常好用了。