Навигация по категориям lxml - PullRequest
1 голос
/ 27 октября 2011

У меня есть анализ сети, и теперь я хочу перемещаться по тегам или показывать график.Как я могу получить график?Или перемещаться по дереву.Показывает первый шаг, затем другие и т.И не знаю, как было построено дерево.

import urllib
from lxml import etree
import StringIO
resultado=urllib.urlopen('trozo.html')
html = resultado.read()
parser= etree.HTMLParser()
tree=etree.parse(StringIO.StringIO(html),parser)

Я только хочу исследовать узлы!График будет классным, но я только хочу его изучить!

1 Ответ

1 голос
/ 28 октября 2011

Вы выполнили анализ, который вы можете увидеть, если выполните следующее:

>>> tree
<lxml.etree._ElementTree object at 0x0148AF08>

Теперь вы можете пройти через этот элемент, используя lxml._ElementTree функции, описанные здесь: http://lxml.de/tutorial.html

Вот некоторые основы, с простым файлом, который я получил из своей локальной сети:

>>> tree.getroot()
<Element html at 147aae0>
>>> tree.getroot().tag
'html'
>>> tree.getroot().text
>>> for child in tree.getroot().getchildren():
        print child.tag, child.getchildren()
head
body
>>> for child in tree.getroot().getchildren():
        print child.tag, [sub_child.tag for sub_child in child.getchildren()]
head ['title']
body ['h1', 'p', 'hr', 'address']
...