import socket, sys
if len(sys.argv) !=3 :
print "Usage: ./supabot.py <host> <port>"
sys.exit(1)
irc = sys.argv[1]
port = int(sys.argv[2])
sck = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sck.connect((irc, port))
sck.send('NICK supaBOT\r\n')
sck.send('USER supaBOT supaBOT supaBOT :supaBOT Script\r\n')
sck.send('JOIN #darkunderground' + '\r\n')
data = ''
while True:
data = sck.recv(1024)
if data.find('PING') != -1:
sck.send('PONG ' + data.split() [1] + '\r\n')
print data
elif data.find('!info') != -1:
sck.send('PRIVMSG #darkunderground supaBOT v1.0 by sourD' + '\r\n')
print sck.recv(1024)
quand je lance ce code je reçois cette erreur ..socket.error: [Errno 10054]
socket.error: [Errno 10054] An existing connection was forcibly closed by the remote host
il est dit que l'erreur est dans la ligne 16, en données = sck.recv (1024
son étrange cause car il travaillait avant le même code, mais je reconnecté au serveur et j'ai commencé à obtenir cette erreur je ne sais même pas pourquoi – SourD
C0d3r: Peut-être que le serveur a décidé qu'il n'a pas aimé votre bot, alors maintenant il a blacklisté. Peut-être qu'ils ont ajouté des informations d'authentification qui sont nécessaires après NICK mais avant les autres commandes? Peut-être que quelqu'un a déjà le NICK, et puisque vous essayez de rejoindre un canal sans NICK, cela vous déconnecte. Vraiment, essayez la technique telnet et tapez les mêmes commandes - le résultat devrait être évident. –