我有一个优势,即我可以使用openpyxl执行多个任务,例如读取和修改单元格中的数据。有一个图像和形状存在于同一个Excel中,即时消息试图删除/删除它,但我找不到任何模块来实现它。我可以添加图片,但无法删除。有什么可能的方法来从openpyxl中删除图像
openpyxl.reader.drawings.find_images()尝试使用此模块,但不确定其实现方式
for image in sheet._images:
print(image)
答案 0 :(得分:1)
wb['worksheet']._images
以上提供了如上所述的图像列表,然后您可以del
索引要删除的图像。
del wb['worksheet']._images [1]
[1]是要删除的图像的样本索引,并且一如既往,不要忘记保存。
wb.save('wb.xlsx')
然后应删除图像。
PS-这是我的第一个SO答案,请随时给我一些提示!
答案 1 :(得分:0)
我遇到了同样的问题,我可以像这样删除所有图像。
sheet._images = []
但在我的情况下,我不得不删除所有 png 文件,所以我是这样解决的。
images = []
for sheet in wb:
for image in sheet._images:
if image.path[-3:] !="png":
images.append(image)
sheet._images = images