2010-12-28 3 views
0

내가 서버에 FTP를 통해 XML 파일을 보내고있다으로 업로드하지만 53킬로바이트에서 48킬로바이트에서 차단.부분 FTP는 storbinary

코드는 다음과 같습니다

이 같은
if __name__ == '__main__': 

    ftp = ftplib.FTP("IP") 
    ftp.login(user = 'NAME', passwd = 'PASS') 
    ftp.cwd('/web/content/tree/_demo') 
    a.write('<root>\n' + DirXML(dirname) + '\n</root>') 
    f=open(outputname,'rb') 
    ftp.storbinary('STOR '+os.path.basename(outputname),f) 
    f.close() 
    ftp.quit() 

같은 문제 : Partial Upload With storbinary in python 그러나 답을 제공하지 않습니다 물론. 파일은 ftp 클라이언트를 통해 전송되고, 파이썬 인터프리터를 통해 전송되지만 스크립트를 통해 전송되지는 않습니다.

편집 : 그것은 예외가 발생하지 않습니다 미세 완료하지만 난 업로드 된 파일을 볼 때 그것은 끝에서 잘립니다. ftp 부분을 제거하고 내 로컬 컴퓨터로 파일을 내보내는 것이 좋습니다. 들여 쓰기는 형식이 잘못되었습니다.

+0

수동으로 파일을 서버로 전송하여 파이썬의 잘못인지 확인해 봤습니까? – SilentGhost

+0

그래, 분명히 내 코드에서 뭔가. – PFlans

+0

그래서 'storbinary'또는 'storlines'입니까? 또한'a'가 무엇이고 어떻게 코드와 관련이 있습니까? – SilentGhost

답변

0
당신은 storlines 대신 storbinary을 사용하고

. 라인 끝 번역을 할 것입니다

전.

storbinary ftplib 코드는 전송 전에 TYPE I을 사용하여 전송 모드가 이미지로 설정되도록합니다. (이진).

또한 전송이 시작되기 전에 사용자가 전송하는 파일이 플러시 또는 폐쇄되었는지 확인하기 위해 확인. write 호출을 통해 작성된 데이터는 ftp 라이브러리가 파일을 열 때 디스크로 플러시되지 않을 수 있습니다.