def __init__(self, dtree, data = None, parent = None):
self.tag = u''
self.text = u''
self.tail = u''
self.attributes = {}
self.attr_names = []
DATAnode.__init__(self, dtree, parent)
with self.node_lock:
if isinstance(data, (str, unicode)):
self.tag = data.lower().strip()
elif isinstance(data, list):
if len(data) > 0:
self.tag = data[0].lower().strip()
if len(data) > 1 and isinstance(data[1], (list, tuple)):
for a in data[1]:
if isinstance(a[1], (str, unicode)):
self.attributes[a[0].lower().strip()] = a[1].strip()
else:
self.attributes[a[0].lower().strip()] = a[1]
if 'class' in self.attributes.keys():
self.attr_names.append('class')
if 'id' in self.attributes.keys():
self.attr_names.append('id')
for a in self.attributes.keys():
if a not in self.attr_names:
self.attr_names.append(a)
评论列表
文章目录