您的位置:首页 > 编程语言 > Python开发

用python写服务器(书上的代码,运行不了,求解释)

2013-04-16 08:22 344 查看
用python写服务器(书上的代码,运行不了,求解释)

只看楼主

收藏

回复

stoneforestwhu

举人5

客户端程序:

from socket import *

HOST =' Stoneforest-PC '

PORT = 9999

BUFSIZ = 1024

ADDR = (HOST,PORT)

tcpCliSock = socket(AF_INET,SOCK_STREAM)

tcpCliSock.connect(ADDR)

while True:

data = raw_input('> ')

if not data:

break

tcpCliSock.send(data)

data = tcpCliSOck.recv(BUFSIZ)

if not data:

break

print data

tcpCliSock.close()

服务器端程序:

from socket import *from time import ctime

HOST = ''

PORT = 9999

BUFSIZ = 1024

ADDR = (HOST,PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)

tcpSerSock.bind(ADDR)tcpSerSock.listen(5)

while True:

print 'waiting for connection...'

tcpCliSock, addr = tcpSerSock.accept()

print '...connected from:',addr

while True:

data = tcpCliSock.recv(BUFSIZ)

if not data:

break

tcpCliSock.send('[%s] %s' %(ctime(),data))

tcpCliSock.close()

错误出现在客户端程序上

D:\Python27>python tsTclnt.pyTraceback (most recent call last): File "tsTclnt.py", line 9, in <module> tcpCliSock.connect(ADDR) File "D:\Python27\lib\socket.py", line 224, in meth return getattr(self._sock,name)(*args)socket.gaierror: [Errno 11004] getaddrinfo
failed

求解释

0

回复

1楼2012-04-03 21:10举报 |

i

itianda

send之后加个shutdown试试

回复 2楼2012-04-03 23:10举报 |

stoneforestwhu

举人5

引用 itianda (2楼)

send之后加个shutdown试试

我在tcpCliSock.send('[%s] %s' %(ctime(),data))加了

tcpCliSock.shutdown().客户端和服务器里都加了,可还是不行。另外端口号改为11901,是特地开启的。

回复 3楼2012-04-04 09:36举报 |

lifulinghan

贡士7

HOST =' Stoneforest-PC '

你确实你的机子是这个名字吗?建议你用127.0.0.1

回复 4楼2012-04-04 16:54举报 |

stoneforestwhu

举人5

引用 lifulinghan (4楼)

HOST =' Stoneforest-PC ' 你确实你的机子是这个名字吗?建议你用127.0.0.1

是主机的名字啊

C:\Users\Stoneforest>hostname

Stoneforest-PC

但是改为127.0.0.1之后就行了,多谢啊!!!

那如果我要和其他计算机(同连在WIFI的)通信的话,客户端的HOST该选什么?

回复 5楼2012-04-04 18:53举报 |

lifulinghan

贡士7

引用 stoneforestwhu (5楼)

是主机的名字啊 C:\Users\Stoneforest>hostname Stoneforest-PC 但是改为127.0.0.1之后就行了,多谢啊!!! 那如果我要和其他计算机(同连在WIFI的)通信的话,客户端的HOST该选什么?

选固定的ip地址,在win里你可以用命令ipconfig来查看。在linux里用ifconfig查看!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: