Hi

I am trying to use the TidyHTMLTreeBuilder module which is part of 
elementtidy, but I am getting what appears to be some sort of scope 
error and it is scrambling my n00b brain.

The module file (TidyHTMLTreeBuilder.py) tried to import ElementTree by 
doing the following:

from elementtree import ElementTree

This bombed, so after a bit of poking around I replaced it with :

from xml.etree import ElementTree

This appears to have worked. However, when I try and parse a file using 
  the function :
TidyHTMLTreeBuilder.parse('weather_ct.html')

I receive the following error:

Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File 
"/usr/lib/python2.5/site-packages/elementtidy/TidyHTMLTreeBuilder.py", 
line 107, in parse
     return ElementTree.parse(source, TreeBuilder())
NameError: global name 'ElementTree' is not defined


The code producing the error is as follows:

def parse(source):
     return ElementTree.parse(source, TreeBuilder())

Surely, if the from... import has worked, ElementTree is in the global 
scope and should therefore be accessible to the function parse?

Can anybody help?

THanks
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to