Bonjour,
Je suis néophyte en Python et j'ai commencé à faire un programme utilisant les sockets pour communiquer avec un serveur.
Lorsque je lance le programme, je fais l'authentification et lorsque par exemple je veux lancer la commande " shutdown " ou même annonce, j'obtiens l'erreur : " TypeError: 'str' does not support the buffer interface "
Sans plus attendre, voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 import os import socket i = 1 login = input("Connexion : ") if(login != 'holox'): print("Mot de passe incorrect !") else: print("Connexion reussie !") while i == 1: addrIP = "127.0.0.1" port = 30001 def sendSocket(command, data): connexionPrincipal = socket.socket(socket.AF_INET, socket.SOCK_STREAM) connexionPrincipal.connect((addrIP, port)) socket_X = command + chr(1) + data connexionPrincipal.send(socket_X) connexionPrincipal.close() commande = input("Qu'est ce que vous voulez faire ?") if commande == "shutdown": sendSocket("shutdown", "") print("Serveur eteint") elif commande == "reloadbans": sendSocket("reloadbans", "") print("Les bans sont reloads") elif commande == "ha": annonce = input("Quelle est l'annonce que vous voulez passer ?") sendSocket('ha', str(annonce)) print("Annonce envoyee !") else: print("Commande incorrect !") os.system("pause")
Voila, le code n'est peut-être pas très propre, mais je verrais pour l'optimiser lorsque j'aurais un peu plus de connaissances. Le but pour l'instant reste de faire un script fonctionnel.
Merci d'avance,
Au revoir.
Partager