Dưới đây là mã của tôi:python và XML: làm thế nào để đặt hai tài liệu vào một tài liệu duy nhất
def extract_infos(i):
blabla...
blabla calculate v...
dom = xml.dom.minidom.parseString(v)
return dom
doc = xml.dom.minidom.Document()
for i in range(1,100):
dom = extract_infos(i)
for child in dom.childNodes:
doc.appendChild(child.cloneNode(True))
Hai dòng cuối cùng làm việc một lần thì:
Traceback (most recent call last):
File "./c.py", line 197, in <module>
doc.appendChild(child.cloneNode(True))
File "/usr/lib/python2.6/xml/dom/minidom.py", line 1552, in appendChild
"two document elements disallowed")
xml.dom.HierarchyRequestErr: two document elements disallowed
Vì vậy, câu hỏi của tôi là: Làm thế nào để đặt hai tài liệu hiện có vào một tài liệu mới (đặt các phần tử gốc của mỗi tài liệu vào một phần tử gốc mới, bao quát).
Các DOM không hoạt động theo cách đó. –
@Olivier, câu trả lời của tôi cho thấy cách bạn có thể chắp thêm DOM vào một cách khác theo cách khá "sạch", nhưng tôi cho rằng bạn muốn cái gì khác. Tôi không hiểu giải pháp bạn đề cập trong phần bình luận cho câu trả lời của Lattyware. Kết quả cuối cùng là một tài liệu XML đúng ngữ pháp, hay là gì? – mzjn
@Oliver Cuối cùng tôi đã hiểu câu hỏi của bạn - bạn đã yêu cầu thêm một dom vào cuối một câu hỏi khác, nhưng điều bạn thực sự muốn là lấy hai tài liệu và đặt cả hai tài liệu như một phần của tài liệu mới, đó là một điều khác. Trước đây là không thể trong khi sản xuất XML, do đó câu trả lời của tôi. Mặt khác, mặt khác, là. –