2010-07-13 4 views
3

HTML 폼에서 BaseHTTPServer를 기반으로하는 서버로 몇 개의 파일을 보냅니다.Python HTML 구문 분석 BaseHTTPServer의 POST 데이터

내 do_POST 내에서 일종의 multipart MIME 문자열처럼 보이는 rfile.read (length)에서 문자열을 얻고 있습니다. 구글이 이것을 어떻게 사용할 수있는 것으로 디코딩 할 수 있는지에 대해서는 도움이되지 못하고있다.

출력은 다음과 같습니다 등등

-----------------------------122422713313797828591978698502 

Content-Disposition: form-data; name="MAX_FILE_SIZE" 



1000000 

-----------------------------122422713313797828591978698502 

Content-Disposition: form-data; name="and_title_input" 

하고 있습니다.

나는

from email.parser import Parser 
p=Parser() 
msg=p.parsestr(s) 

email.parser 시도했지만 MSG는 내 목표 나에게 어떤 가까이 얻을하지 않는 것 - 그것은 여러 부분 아니에요 더 페이로드를 포함하지 않는다.

필자는 데이터를 직접 파싱하는 일을 줄였습니다. 이는 분명히 일을하는 Pythonic 방식이 아닙니다!

내가 뭘 분명히 놓친 적이 있습니까? Google은 나를 실망 시켰습니까? 스택 오버플로로 하루를 절약 할 수 있습니까?

답변

5

cgi.parse_multipart이 귀하의 필요를 충족합니까? comp.lang.python에 관한 관련 토론을 참조하십시오.

+0

Yup-cgi.parse_multipart가 답이었고 comp.lang.python에 대한 링크가 매우 유익했습니다. 고마워. 시간이 절약되었습니다. – pictiPig