2011-08-24 5 views
0

첫 번째 단계에서 URL 주소를 사용하는 프로그램을 작성하고 페이지를 엽니 다. 그런 다음 xml.dom.minidom 파서에 내용을 넣습니다 :python xml.dom 구문 분석 문제

from xml.dom.minidom import parse 

page = urllib2.urlopen(page_url) 
parser = parse(page) 

문제는 구문 분석 방법은 오류가 발생하므로 많은 페이지가 일치하지 않는 태그 및 특수 문자를 가지고있다. 이것은 단지 좋은 해결책이 아니다,

from xml.dom.minidom import parseString 

page = urllib2.urlopen(page_url) 
data = "" 
for line in page.readlines(): 
    data += str(line.replace("<br>", "<br />").replace(OTHER).replace...) 
parser = parse(data) 

을하지만 : 또한 그것은 어떤 <br>하지 <br />가있는 경우이 같은 노력

... 오류가 발생합니다.

그래서 HTML 코드의 불일치 태그 및 기타 오류에 민감하지 않은 lib가 있습니까?

답변

2

저는 매우 강력하며 lxml은 일반적으로 매우 빠르며 XPath support을 포함하여 매우 뛰어난 기능을 제공합니다.

import lxml.html 

doc = lxml.html.parse('http://example.com') 
+0

nop이 작동하지 않습니다. o yea와 lxml에는 .html 패키지 (유일한 lxml.parse)가 없습니다. – karantan

+0

아마도 이전 버전을 사용하고 있습니까? [그것이 확실히하기 때문에] (http://lxml.de/lxmlhtml.html). – zeekay