算了,选择了Python就一路走下去,管对还是错,既然选择了前方,就不要顾风雨兼程,今天看了Python的socket的编程,真实遇到了各种问题,防火墙,error 10054 ,10049 ,自己就在百度上各种搜索,最终还是出来了,bug调出来的那感觉只有自己最清楚。这些都是自己socket的时候,一些笔记:
1 .netstat -no 这个命令是察看端口的,并且可以通过pid察看是哪些程序在用这些端口!
2 在Python中或其它语言中,利用Socket编写服务器和客户端通信程序,经常会遇到一个错误:
socket.error: [Errno 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次这个提示会在端口冲突的时候出现,可能的原因是在服务器程序中创建一个Socket打开一个端口后,在程序结束的时候没有关闭这个Socket,因此下次启动程序就会出现这个错误提示,解决方法:1、在服务器程序结束的时候要关闭Socket 2、或者更换端口号 3、重启机器
3 ipconfig 查看本机的ip
client:
#client import socket HOST = '10.11.29.186' PORT = 8156 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect((HOST,PORT)) s.sendall("hello world") data = s.recv(1024) s.close() print 'Received',repr(data)
sever:
# sever program import socket HOST = '' PORT = 8156 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.bind((HOST,PORT)) s.listen(1) conn,addr = s.accept() print 'Connected by',addr while 1: data = conn.recv(1024) if not data: break conn.sendall(data) conn.close()
最后的运行结果:
源代码:
原文地址:http://blog.csdn.net/lotluck/article/details/45565007