Gmail에서 IMAP을 통해 다운로드 한 GChats를 구문 분석하기 위해 XML을 배우려고합니다. 이렇게하려면 lxml을 사용하고 있습니다. 채팅 메시지의 각 행과 같이 포맷 :XML/HTML로 인코딩 된 GChats를 구문 분석
<cli:message to="[email protected]" iconset="square" from="[email protected]" int:cid="insertid" int:sequence-no="1" int:time-stamp="1236608405935" xmlns:int="google:internal" xmlns:cli="jabber:client">
<cli:body>Nikko</cli:body>
<met:google-mail-signature xmlns:met="google:metadata">0c7ef6e618e9876b</met:google-mail- signature>
<x stamp="20090309T14:20:05" xmlns="jabber:x:delay"/>
<time ms="1236608405975" xmlns="google:timestamp"/>
</cli:message>
내가 지금처럼 XML 트리를 구축 할 때 :
root = etree.Element("cli:message")
내가 얻을이 오류 :
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "lxml.etree.pyx", line 2568, in lxml.etree.Element (src/lxml/lxml.etree.c:52878)
File "apihelpers.pxi", line 126, in lxml.etree._makeElement (src/lxml/lxml.etree.c:11497)
File "apihelpers.pxi", line 1542, in lxml.etree._tagValidOrRaise (src/lxml/lxml.etree.c:23956)
ValueError: Invalid tag name u'cli:message'
I을 그것을 이렇게 도주 시키십시오 :
root = etree.Element("cli\:message")
나는 그는 똑같은 오류. 채팅 보관함의
헤더는 관련 보인다 정보를 제공합니다
Content-Type: text/xml; charset=utf-8
Content-Transfer-Encoding: 7bit
사람이 여기에 무슨 일이 일어나고 있는지 알고 있나요?
기본적으로 내가 채팅 로그를 로컬에 저장 한 경우를 제외하고는 (내가 채팅 로그를 일지 항목으로 잡아두고 싶습니다.) 본질적으로 수행하려고합니다. 최종 스크립트를 볼 기회가 있습니까? – JudeOChop