F
Furtano
Gast
Netzwerk-Programm überträgt nur 1KB
Hi,
mein Programm, dass eine Datei von Server zu Client überträgt funktioniert gut.
Nur bekomme ich manchmal den Fehler (wenn ich über Eclipse aufrufe, über Konsole kommt er nicht):
File "C:\Dokumente und Einstellungen\Christian\workspace\autoupdater\client.py", line 28, in <module>
BUFFERSIZE =int(s.recv(1024))
ValueError: invalid literal for int() with base 10: '3730109PK\x03\x04\x14'
Wie ändere ich das?
Server.py
Client.py
Hi,
mein Programm, dass eine Datei von Server zu Client überträgt funktioniert gut.
Nur bekomme ich manchmal den Fehler (wenn ich über Eclipse aufrufe, über Konsole kommt er nicht):
File "C:\Dokumente und Einstellungen\Christian\workspace\autoupdater\client.py", line 28, in <module>
BUFFERSIZE =int(s.recv(1024))
ValueError: invalid literal for int() with base 10: '3730109PK\x03\x04\x14'
Wie ändere ich das?
Server.py
PHP:
'''
Created on 08.06.2012
@author: Christian
'''
#!/usr/bin/python
from socket import *
from binascii import *
import os
data = []
def readFile (fileName):
x=os.stat(fileName)
file = open(fileName, "rb")
for b in file:
data.append(b)
file.close()
#Anzahl der Bytes
return x.st_size
BUFFERSIZE = readFile("hier.zip")
print "Dateigroesse: " + str(BUFFERSIZE)
myHost = ''
myPort = 2000
s = socket (AF_INET, SOCK_STREAM)
s.bind ((myHost, myPort))
s.listen (22) # 22 Leute gleichzeitig
# wandelt die liste der daten in einen String um
string = ''.join(data)
try:
while 1:
connection, adress = s.accept()
connection.sendall(str(BUFFERSIZE))
connection.sendall(string)
finally:
s.close()
Client.py
PHP:
'''
Created on 08.06.2012
@author: Christian
'''
#!/usr/bin/python
import sys
import os
from socket import *
data = []
def writeFile (fileName):
newfile = open (fileName,'wb')
string = ''.join(data)
newfile.write(string)
newfile.close()
serverHost = 'localhost'
serverPort = 2000
s = socket (AF_INET, SOCK_STREAM)
s.connect((serverHost, serverPort))
#s.send(os.environ['COMPUTERNAME'])
BUFFERSIZE =int(s.recv(1024))
try:
data = s.recv(3730109)
#for i in data:
#print i
finally:
s.close()
writeFile('download.zip');
print 'Uebertragung abgeschlossen'
s.close()
print 'Verbindung geschlossen'
#print 'Dateigroesse: ' + BUFFERSIZE
Zuletzt bearbeitet von einem Moderator: