鱼C论坛

 找回密码
 立即注册
查看: 5173|回复: 9

python编写socket程序recv问题

[复制链接]
发表于 2015-4-21 16:33:24 | 显示全部楼层 |阅读模式
20鱼币
本帖最后由 戴宇轩 于 2015-6-28 18:09 编辑
  1. import socket
  2. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  3. port = 7777
  4. host = '121.41.49.63'
  5. s.connect((host , port))
  6. print (s.recv(4096))
  7. s.send('2')                         #发送‘2’后程序就一直处于等待状态
  8. print (s.recv(4096))           #这里接收不到返回数据
  9. s.close()
复制代码



请教大神如何解决{:1_1:}

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-21 23:48:50 | 显示全部楼层
支持楼主
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-21 23:52:19 | 显示全部楼层
支持楼主
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-22 09:41:52 | 显示全部楼层
坐等大神
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-22 11:09:42 | 显示全部楼层
服务器端的代码如何?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-22 11:11:10 | 显示全部楼层
你这是客户端的啊,没有服务器端运行着的话,肯定打不开啊。
你需要写一个服务器端的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-22 11:11:46 | 显示全部楼层
#客户端
import socket,sys
port =70
host=sys.argv[1]

filename=sys.argv[2]

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((host,port))

s.sendall(filename+"\r\n")

while 1:
    buf=s.recv(2048)
    if not len(buf):
        break
    sys.stdout.write(buf)

#服务器端
import socket
host=''
port=51423
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)
s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
s.bind((host,port))
s.listen(1)

print "Server is running on port %d;press Ctrl-C to terminate." %port
while 1:
    clientsock,clientaddr=s.accept()
    clientfile=clientsock.makefile('rw',0)
    clientfile.write("welcome,"+str(clientaddr)+'\n')
    clientfile.write("Please enter a string:")
    line=clientfile.readline().strip()
    clientfile.write("You entered %d characters.\n" %len(line))
    clientfile.close()
    clientsock.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-2-2 11:06:07 | 显示全部楼层
本帖最后由 shzbg1341810374 于 2016-2-2 11:07 编辑
  1. import socket
  2. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  3. port = 7777
  4. host = '121.41.49.63'
  5. s.connect((host , port))
  6. print (s.recv(4096))
  7. s.send('2'.encode())                         #发送‘2’ 进行encode()编码
  8. print (s.recv(4096).decode())           #这里接收返回数据 进行decode()解码
  9. s.close()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-1-5 16:21:30 | 显示全部楼层
本帖最后由 python! 于 2018-1-5 16:22 编辑

你写错了吧   我把你了复制出来  报了这个错  函数带错了把  图片在下面
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-1-5 16:22:00 | 显示全部楼层
图片
socket.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 05:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表