【Python 局域网控制】——做一个超简单的局域网指令控制电脑

【Python 局域网控制】——做一个超简单的局域网指令控制电脑程序分为两部分,一个是客户端也是被操控的端口,另一个是服务端就是用来操作被操控的端口点个赞留个关注吧!!程序很简单,是通过局域网聊天系统改造而成,没有高级的GUI框架,只有简简单单的DOS窗口,这个仅供学习,当然也可以在你的第二台电脑里放入客户端,然后用服务端进行指令操作,也是很不错的。客户端会自动获取你的IPv4地址,并显示出来,需要用客户端给出的IP地址去服务端进行连接。执行指令也很简单,用接收到的数据进行os.system()进行执行。想法多的也可以做一个鼠标定位数据传输,可达到鼠

大家好,又见面了,我是你们的朋友全栈君。

程序分为两部分,一个是客户端也是被操控的端口,另一个是服务端就是用来操作被操控的端口

点个赞留个关注吧!!

程序很简单,是通过局域网聊天系统改造而成,没有高级的GUI框架,只有简简单单的DOS窗口,这个仅供学习,当然也可以在你的第二台电脑里放入客户端,然后用服务端进行指令操作,也是很不错的。

客户端会自动获取你的 IPv4 地址,并显示出来,需要用客户端给出的IP地址去服务端进行连接。执行指令也很简单,用接收到的数据进行os.system()进行执行。想法多的也可以做一个鼠标定位数据传输,可达到鼠标控制电脑,想法很大,行动很难。这个是一个供学习的

客户端:

import socket
import os
import psutil

# 执行接收到的命令
def send_data(data):
    os.system(data)
    print('[-][+][~]执行命令:[',data+']')

Database = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

# 获取IPv4地址
info = psutil.net_if_addrs()
wlan = info['WLAN']
def myaddr():
    for i in wlan:
        for myaddr in i:
            if '192.168' in str(myaddr):
                return myaddr
Database.bind((myaddr(),8888))
Database.listen(1)
def main():
    while True:   # 持续循环执行
        try:      # 接受数据和命令,如果出错则视为已断开连接
            print(f'[#~]当前服务器IP地址为[{myaddr()}]...')
            print('[#~]等待连接中...')
            sed,dree=Database.accept()    # 等待服务端接入
            print('[+]已连接服务器.')
            while True:
                if sed.recv(1024).decode('utf-8') == '':
                    break
                data = sed.recv(1024).decode('utf-8')#接受数据
                send_data(data)   # 发送
        except:
            pass
        print('[-]连接已断开..\n')

if __name__ == "__main__":
    main()

【Python 局域网控制】——做一个超简单的局域网指令控制电脑

 

服务端需要客户端输出的IP地址才可以连接上,输出的指令尽量不要把客户端的DOS窗口顶掉,列如cmd直接就给替换掉了,尽量使用start cmd 即可打开

服务端:

import socket
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
def main():
    while True:
        DATA = input('请输入指令:')
        if DATA == '':
            pass
        else:
            if len(DATA):
                udp_socket.send(DATA.encode('utf-8'))
                udp_socket.send(DATA.encode('utf-8'))
if __name__ == '__main__':
    myaddr = input('输入要连接服务器的IP地址:')
    udp_socket.connect((myaddr, 8888))  # 连接服务器
    data_list = ''   # 测试
    udp_socket.send(data_list.encode('utf-8'))
    main()

我们输入客户端的IP地址,回车可以看到没有报错说明连接上了

【Python 局域网控制】——做一个超简单的局域网指令控制电脑

 这个是客户端,可以看到已经连接成功,我们使用服务端操作一下指令

【Python 局域网控制】——做一个超简单的局域网指令控制电脑

 

服务端,我们start cmd 打开cmd

【Python 局域网控制】——做一个超简单的局域网指令控制电脑

 客户端,可以看到已经打开了cmd窗口

【Python 局域网控制】——做一个超简单的局域网指令控制电脑

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151154.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何用pycharm编写程序_pycharm怎么编写python代码

    如何用pycharm编写程序_pycharm怎么编写python代码一、编写第一个Python项目二、使用Pycharm编写第一个Python程序运行Pycharm,选择CreateNewProject,创建一个新的Python工程。选择’PurePython’创建一个新的纯Python工程项目,Location表示该项目的保存路径,Interpreter用来指定Python计时器的版本。右击项目,选择New,再选择PythonFile在…

    2022年8月25日
    6
  • 使用SurfaceView和MediaPlayer实现视频做为背景

    使用SurfaceView和MediaPlayer实现视频做为背景

    2022年2月5日
    44
  • 基于opencv人脸识别

    基于opencv人脸识别一、准备所有代码上传至https://pan.baidu.com/s/1ETUetRnU83iytb6ZcE5GUQ提取码:0jei环境:win10,vs2013,opencv3.2注:每个代码都可以在vs中单独运行该项目所有文件如下:其中只需要使用的文件如下:详细代码://这个是生成照片的代码#include<opencv2…

    2022年6月4日
    42
  • 什么是ARP欺骗_ARP欺骗防范

    什么是ARP欺骗_ARP欺骗防范ARP欺骗的本质是把虚假的IP-MAC映射关系通过ARP报文发给主机,让主机把虚假的IP-MAC映射存入ARP缓存表(可能是IP地址错误,也可能是MAC地址错误),让其无法正确发送数据漏洞的根源ARP协议是无连接操作系统收到ARP请求或响应后无法确认senderMAC和senderIP真假ARP欺骗伪造网关攻击者B伪造ARP报文(senderIP地址是网关的,senderMAC地址不是网关的),发送给网段内的主机A,那么主机A就会把网关的ip地址和伪造的mac地址缓存到arp缓.

    2025年7月3日
    2
  • 【激活成功教程】百资繁中输入法_V1.8.1

    【激活成功教程】百资繁中输入法_V1.8.1应用简介  百资繁体中文输入法提供中文手写输入,繁体注音输入、繁体速成输入、繁体仓颉输入及英文输入。  主要功能包括:  1.支援10万组繁体中文词汇,6万Prediction词组及最新流行用语;  2.支援注音模糊输入,让使用者只需输入第一个注音、Tune或部份就可以选择候选词汇;  3.支援注音整个句子输入;  4.支援注音联想功能;

    2022年7月16日
    25
  • mysql grant 使用 授权 添加用户

    mysql grant 使用 授权 添加用户

    2021年4月29日
    146

发表回复

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

关注全栈程序员社区公众号