WOL 主机唤醒工具

1. 我为什么要写WOL 唤醒工具

答案:是为了省电(是为了环保)

2. MarsCode是什么?

MarsCode对话框官方回答:MarsCode是一个在线的集成开发环境(IDE),它专注于提供一个高效、便捷的编程环境,特别是在教育领域。MarsCode支持多种编程语言,包括Python、Java、C++等,并且提供了实时的代码编辑、调试和运行功能。

MarsCode的特点包括:

  1. 实时协作:支持多人实时协作编程,适用于团队项目或教学场景。
  2. 代码自动补全:提供智能的代码自动补全功能,帮助开发者提高编码效率。
  3. 语法高亮:支持多种编程语言的语法高亮,使代码更加易读。
  4. 调试工具:内置调试工具,方便开发者进行代码调试。
  5. 版本控制:集成了Git版本控制系统,方便管理代码版本。
  6. 云端存储:所有代码和项目都存储在云端,用户可以随时随地访问和编辑。

MarsCode的目标是为开发者和学习者提供一个简单、易用且功能强大的编程环境,帮助他们更高效地编写代码。

3. 为什么要使用这个工具

写这个代码的起因是前段时间参加字节跳动豆包MarsCode活动
既然参加了活动,我觉得我还是要体验一下产品,使用产品要做点什么的

4. 项目需求

对于使用远程桌面工具经常连接回家的我来说,日常电脑正常开机跑编译或是本地跑AI等情景挺多的,但也有很多闲置的时候

因此做了一个主机唤醒工具方便在不使用电脑的时候关闭电脑,在需要的时候通过远程唤醒的方式打开电脑让电脑起飞

在豆包MarsCode的帮助下,提供需求和多次改进终于把代码写好啦

多了一次使用AI编程的实战

5. 实现方法

  1. 注册一个MarsCode账号
  2. 进入工作台
  3. 可以在本地IDE中集成,或者直接使用云端网页版
  4. 创建一个项目
  5. 把你的想法告诉MarsCode,开启代码创作之旅
  6. 不停的更改你的需求,让MarsCode输出代码
  7. 在本地搭建好环境运行就好啦
  8. 在多次代码的输出下这事儿成啦,可以啦

6. 总结

在使用MarsCode时候,在提需求的时候AI会输出代码(你说啥我输出啥只要快就好)
不停的进行改改改,对于新手小白来说充满了新奇和在不会编程的同时更容易去实现写代码的功能
刚开始输出的时候的确给了可以用的功能,但不太满意,需要继续提需求达到满意(再一次想起了我的甲方爸爸),我会在提供可用功能的同时继续提供给MarsCode代码让他继续优化,这样的结果会更完美,功夫不负有心人,终于搞定了

7. 项目地址

以下是完成的Python代码

# Author: liqixin
# Mail: [email protected]
# Web: https://www.qixinlee.com

import streamlit as st
import wakeonlan

# 设置页面标题
st.title("WOL 唤醒工具")

# 预设的常用主机MAC地址列表
common_mac_addresses = {
    "Host 1": "00:11:22:33:44:55",
    "Host 2": "AA:BB:CC:DD:EE:FF",
    "Host 3": "11:22:33:44:55:66"
}

# 在页面上添加下拉框,用于选择目标主机
selected_host = st.selectbox("请选择要唤醒的主机:", list(common_mac_addresses.keys()))

# 在页面上添加文本输入框,用于输入自定义主机MAC地址
custom_mac_address = st.text_input("或者输入自定义主机MAC地址:")

# 使用st.empty()创建一个占位符,用于在条件满足时显示警告信息
warning_placeholder = st.empty()

# 在页面上添加一个按钮,用于发送魔法包
if st.button("唤醒主机"):
    # 检查 MAC 地址是否为空
    if not custom_mac_address and not selected_host:
        # 在占位符中显示警告信息
        warning_placeholder.warning("请选择要唤醒的主机或输入自定义主机MAC地址。")
    else:
        # 发送魔法包
        if custom_mac_address:
            wakeonlan.send_magic_packet(custom_mac_address)
            st.success(f"已发送魔法包到 {custom_mac_address},尝试唤醒主机。")
        else:
            mac_address = common_mac_addresses[selected_host]
            wakeonlan.send_magic_packet(mac_address)
            st.success(f"已发送魔法包到 {mac_address},尝试唤醒主机。")

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注