Socket problems

jjbutler88 at gmail.com jjbutler88 at gmail.com
Sun Jul 13 13:22:16 EDT 2008


I am trying to write a simple python IRC client, roughly following
this guide: http://www.devshed.com/c/a/Python/Python-and-IRC/

I have written some code, which uses the same commands as the guide,
but I get this error:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.5/lib/
python2.5/threading.py", line 486, in __bootstrap_inner
    self.run()
  File "pythonirc.py", line 31, in run
    self.sock.send('NICK %s\r\n') % self.nick
AttributeError: send

Here is my code so far:
[code]
#!/usr/bin/env python

from socket import *
from threading import Thread
import sys

class IRCBot(Thread):
    def __init__(self, host, room, nick, port=6667, ssl=0):
        Thread.__init__(self)
        self.host = host
        self.port = port
        self.ssl = ssl
        self.room = room
        self.nick = nick
        self.sock = socket(AF_INET, SOCK_STREAM)

    def run(self):
        print "Connecting..."
        try:
            self.sock.connect((self.host, self.port))
        except:
            print "Could not connect to %s" % self.host
            sys.exit(1)
        if self.ssl:
            try:
                self.sock = ssl(self.sock)
            except:
                print "Server does not suport SSL"
                sys.exit(1)

        self.sock.send('NICK %s\r\n') % self.nick
        self.sock.send('USER PyIRC PyIRC PyIRC :Python IRC\r\n')
        self.sock.send('JOIN #%s\r\n') % self.room
        while True:
            data = self.sock.recv(4096)
            if data.find('PING') != -1:
                self.sock.send('PONG' + data.split()[1]+'\r\n')
            print data

    def close(self):
        self.sock.send('PART #%s\r\n') % self.room
        self.sock.send('QUIT\r\n')
        self.sock.shutdown(SHIT_RDWR)
        self.sock.close()

IRCBot('irc.psych0tik.net','hbh', 'pythonircclient',6697,1).start()
[/code]

Anyone know why it might be doing this? Config problem?

Thanks in advance,
Jon




More information about the Python-list mailing list