Я пытаюсь создать скрипт, который изменяет файл .svg (XML формат). Я пытаюсь изменить цвет фона одного или нескольких объектов, таких как массив.
На данный момент я думаю, что прошел первую часть своего кода, но не вижу, как зарегистрировать мой изменение цвета.
Вот мой код:
From bs4 import BeautifulSoup
import re
svg = open('draw.svg').read()
soup = BeautifulSoup(svg ,'lxml')
paths = soup.find_all('path')
for path in paths:
if path.attrs['id']==('5'):
print(path.attrs['style'])
Str = re.sub( r'fill:#[0-9a-fA-F]{6}',
r'fil:#FFFFFF' ,
path.attrs['style'])
path.attrs['style'] = Str
print(Str)
print(path.attrs['style'])
svg = open ('draw.svg' ,"w")
svg.write(paths)
svg.close()
то, что я хочу изменить, находится в теге пути, который содержит 4 различных атрибута (id, style ...). чтобы определить мой идентификатор, затем стиль, затем я помещаю регулярное выражение, которое я пытаюсь изменить, но оно ничего не меняет в исходном файле. Я думаю, что что-то упустил, вы можете помочь мне, посоветовав мне, как это сделать?
Я не вижу, как я могу читать / писать файл одновременно.