Yes. It hangs at accept. I always end up doing end task because it never passes the "accept" statement. When I set the port I use netstat (netstat -bn) to get the ports that are in use. I use PythonWin 2.4. I am still puzzled about the fact that it runs fine for you. You are right about using the work_socket instead of s. My program never ran to that line so I did not notice the error.
Thank you, Dana --- Tony Meyer <[EMAIL PROTECTED]> wrote: > > I am trying to use Python to get the data received at a > > specific port (in use) on my computer. I already tried below > > code which seems to hang at the statement accepting > > connections. > > Seems to hang, or does hang? Using print statements will tell you > whether > that's where it's getting stuck or not. > > > I don't know what else I can try. Any > > suggestions will be welcome. > > > > import socket, select, os > > > > PORT = 2005 > > s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) > > s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) > > s.bind((socket.gethostname(), PORT)) > > s.listen(1) > > work_socket, addr = s.accept() > > data = s.recv(1024) > [...] > > This should be 'data = work_socket.recv(1024)'. > > This script works for me with that change. (i.e. I can run it with port > 2005 already in use, connect to the port, and it will finish without > error). > > =Tony.Meyer > > __________________________________ Do you Yahoo!? Take Yahoo! Mail with you! Get it on your mobile phone. http://mobile.yahoo.com/maildemo -- http://mail.python.org/mailman/listinfo/python-list