python socket模块[errno 113_Python错误:发送图像时“socket.error:[Errno 11]资源暂时不可用”...

我想创建一个程序来访问文件中的图像,对它们进行编码,然后将它们发送到服务器.

比服务器应该解码图像,并将其保存到文件.

我测试了图像编码本身,它工作,所以问题在于服务器和客户端连接.

这是服务器:

import socket

import errno

import base64

from PIL import Image

import StringIO

def connect(c):

try:

image = c.recv(8192)

return image

except IOError as e:

if e.errno == errno.EWOULDBLOCK:

connect(c)

def Main():

host = '138.106.180.21'

port = 12345

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, socket.IPPROTO_TCP)

s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)

s.bind((host, port))

s.listen(1)

while True:

c, addr = s.accept()

c.setblocking(0)

print "Connection from: " + str(addr)

image = c.recv(8192)#connect(c)

imgname = 'test.png'

fh = open(imgname, "wb")

if image == 'cusdom_image':

with open('images.png', "rb") as imageFile:

image = ''

image = base64.b64encode(imageFile.read())

print image

fh.write(image.decode('base64'))

fh.close()

if __name__ == '__main__':

Main()

这是客户:

import socket

import base64

from PIL import Image

import StringIO

import os, sys

ip = '138.106.180.21'

port = 12345

print 'Add event executed'

s = socket.socket()

s.connect((ip, port))

image_path = '/home/gilgamesch/Bilder/Bildschirmfoto.png'

print os.getcwd()

olddir = os.getcwd()

os.chdir('/')

print os.getcwd()

if image_path != '':

with open(image_path, "rb") as imageFile:

image_data = base64.b64encode(imageFile.read())

print 'open worked'

else:

image_data = 'cusdom_image'

os.chdir(olddir)

s.send(image_data)

s.close()

并且错误消息是:

Traceback (most recent call last):

File "imgserv.py", line 49, in

Main()

File "imgserv.py", line 34, in Main

image = c.recv(8192)#connect(c)

socket.error: [Errno 11] Resource temporarily unavailable

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值