Ребята, всем доброго времени суток!
Есть некий xml файл, из которого мне необходимо взять данные и записать в csv файл.
Как вы уже поняли, данные должны идти напротив друг друга.
У меня получается только так:
Вот мой код:
from bs4 import BeautifulSoup as bs
import csv
# открываем xml, читаем и сохраняем в переменную, содержимое файла
with open('continents.xml', 'r', encoding='utf-8') as file:
content = file.read()
soup = bs(content, 'lxml')
# создаем файл csv и записываем данные из xml
with open('continents.csv', 'w', newline='', encoding='utf-8') as csvfile:
fieldnames = ['Name', 'FCode'] # создаем 2 столбца
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
# надо записать данные, идущие паралелльно друг другу
for elem in soup.find_all('name'):
writer.writerow({'Name': elem.get_text()})
for elem in soup.find_all('fcode'):
writer.writerow({'FCode': elem.get_text()})