2012-09-20 3 views
0

BeautifulSoup을 사용하여 웹 페이지에 양식을 제출하고 있습니다. 이 페이지에는 다음과 같은 텍스트 영역에 XML 결과를 반환파이썬을 사용하여 textarea에서 XML을 구문 분석하고 json을 반환하는 방법은 무엇입니까?

<textarea name='xmlresults' rows='40' cols='150'> 
<?xml version="1.0" encoding="UTF-8"?> 
<companies> 
    <company name=”Acme Corp” timestamp="2012-09-04 02:49:39"> 
    <officers> 
     <officer name=”John Doe” position=”CEO” /> 
    </officers> 
    </company> 
</companies> 
</textarea> 

내가 파이썬을 사용하여 결과를 분석하고 JSON 결과를 반환하고 싶습니다. 나는 이것을 처리하는 가장 좋은 방법에 대한 지침을 찾고있다.

import xmltodict 
import json 

json.dumps(xmltodict.parase(txt)) 

을하지만 먼저 당신은 내가 당신을 생각하지 않는다 (순서대로 따옴표를 넣어 (XML에서 따옴표의 두 가지 유형이 있습니다) 및 XML 버전 줄을 제거 필요 :

+0

지금까지 해보신 것은 무엇입니까? 무엇이 실패 했는가? 구체적인 문제를 해결하는 데 도움을 줄 수는 있지만 코드를 작성하도록 요청하는 것 같습니다. –

답변

2

당신은 xmltodict을 시도 할 수 json 결과에서 이것을 필요로 함).

+0

답장을 보내 주셔서 감사합니다. 따옴표는 내가 Word에서 잘라내어 붙여 넣기 때문이었습니다. 귀하의 솔루션이 나를 위해 일했습니다. 내 BeautifulSoup 구문 분석 끝에 .string을 추가해야했습니다. text_area = soup.find ('textarea', { 'name': 'xmlresults'}) 문자열 json_result = json.dumps (xmltodict.parse (text_area)) –

관련 문제