ó \STc@smdZddlZddlZddlZddlZddlmZddlmZddd„ƒYZ dS(s Components for reading HTML files from a SAX-like producer. WWW: http://4suite.com/4DOM e-mail: support@4suite.com Copyright (c) 2000 Fourthought Inc, USA. All Rights Reserved. See http://4suite.com/COPYRIGHT for license and copyright information iÿÿÿÿN(tNode(timplementationtHtmlDomGeneratorcBsheZdd„Zd d„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z RS( icCs ||_dS(N(t _keepAllWs(tselft keepAllWs((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt__init__scCs |dkr\tjdƒ|_|jj}|jj|ƒtjjj |ƒ|j|_ n||_|jj ƒ|_ g|_ |j j |j ƒd|_dS(sŽ If None is passed in as the doc, set up an empty document to act as owner and also add all elements to this document tN(tNoneRtcreateHTMLDocumentt _ownerDoctdocumentElementt removeChildtxmltdomtextt ReleaseNodet _rootNodetcreateDocumentFragmentt _nodeStacktappendt _currText(RtownerDoctde((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt initStates     cCs|jƒ|jS(N(t_completeTextNodeR(R((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt getRootNode/s cCsB|jr>|jj|jƒ}|jdj|ƒd|_ndS(NiÿÿÿÿR(RR tcreateTextNodeRt appendChild(Rtnew_text((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyR3s cCs[|jƒ|jj|ƒ}x(|jƒD]}|j|||ƒq)W|jj|ƒdS(N(RR t createElementtkeyst setAttributeRR(Rtnametattribst new_elementtcurr_attrib_key((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt startElement:s  cCs9|jƒ|jd}|jd=|jdj|ƒdS(Niÿÿÿÿ(RRR(RR!R#((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt endElementBs   cCsD|jr@|jdjtjkr@|j||||!|_ndS(s If 'keepAllWs' permits, add ignorable white-space as a text node. Remember that a Document node cannot contain text nodes directly. If the white-space occurs outside the root element, there is no place for it in the DOM and it must be discarded. iÿÿÿÿN(RRtnodeTypeRt DOCUMENT_NODER(Rtchtstarttlength((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pytignorableWhitespaceHs"cCs|j||||!|_dS(N(R(RR)R*R+((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt charactersRscCs |‚dS(N((Rt exception((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyterrorZscCs |‚dS(N((RR.((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt fatalError]sN( t__name__t __module__RRRRRR%R&R,R-R/R0(((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyRs        (( t__doc__tsyststringt cStringIOt xml.dom.extR txml.domRRR(((sN/opt/freeware/lib64/python2.7/site-packages/_xmlplus/dom/ext/reader/HtmlSax.pyt s $