Я создал скрипт для извлечения значений XML с помощью регулярных выражений и последующего добавления к листу Excel. Затем я добавил метод дерева элементов, чтобы получить значение по имени тега. Я также хочу добавить это значение к тому же листу XLSX.TypeError: Значение должно быть списком, кортежем, диапазоном или генератором или dict
Я получаю эту ошибку:
Traceback (most recent call last):
File "C:\Path\To\Desktop\excels.py", line 23, in <module>
ws.append(agreement)
File "C:\Python34\lib\site-packages\openpyxl\worksheet\worksheet.py", line 763, in append
self._invalid_row(iterable)
File "C:\Python34\lib\site-packages\openpyxl\worksheet\worksheet.py", line 768, in _invalid_row
type(iterable))
TypeError: Value must be a list, tuple, range or generator, or a dict. Supplied value is <class 'str'>
Это пример elementTree
код, который я нашел, и я тестирование.
from openpyxl import Workbook
import xml.etree.ElementTree as ET
xmlfile = 'test.xml'
element_tree = ET.parse(xmlfile)
root = element_tree.getroot()
agreement = root.find(".//tag").text
#variable = int(agreement)
print (agreement)
wb = Workbook()
kevin = ["1", "2", "3"]
# grab the active worksheet
ws = wb.active
# Data can be assigned directly to cells
ws['A1'] = 42
# Rows can also be appended
ws.append(agreement)
ws.append(kevin)
# Save the file
wb.save("sample.xlsx")
Пожалуйста, включите полное сообщение об ошибке и полный трассирование в вашем посте. – BrenBarn