Ich benutze Windows und suche nach einem Handler oder Wrapper mit Python für einen Minecraft-Server, so dass ich Befehle ohne Benutzereingaben automatisch eingeben kann. Ich habe viele Fragen auf der Website durchsucht und fand nur halbe Antworten (zumindest in meinem Fall). Ich glaube, dass ich das Unterprozessmodul benutzen muss, aber ich kann nicht entscheiden, welches ich im Moment verwende, um mit den Popen-Funktionen zu experimentieren.Ein Python-Wrapper oder Handler für einen Minecraft-Server
server = Popen("java -jar minecraft_server.jar nogui", stdin=PIPE, stdout=PIPE, stderr=STDOUT)
while True:
print(server.stdout.readline())
server.stdout.flush()
command = input("> ")
if command:
server.stdin.write(bytes(command + "\r\n", "ascii"))
server.stdin.flush()
Dies funktioniert in gewisser Weise aber nur druckt eine Zeile für jedes Mal, wenn Sie einen Befehl eingeben, die nicht arbeiten kann, und all meine Bemühungen um dieses Ziel zu ändern up: Ich habe eine Antwort, die ich für meinen Fall modifizierte gefunden mit dem Programm nichts anderes ausführen und stattdessen nur lesen. Dies ist keine doppelte Frage, weil keine der Antworten in ähnlichen Fragen mir genug helfen könnte.
Vielen Dank dafür, wie ich die Hoffnung verlor, etwas Ähnliches zu finden, das tatsächlich arbeitete. Es tut mir wirklich leid, dass ich das zu spät bemerkt habe, weil ich sehen konnte, dass es keine sofortige Antwort geben würde. Danke :) –