在Python中,我如何将Excel文件中的图片重命名并保存到特定文件夹里?
时间: 2024-10-22 11:12:39 浏览: 35
Python批量提取PDF发票信息保存至Excel文件并对文件重命名
在Python中,你可以使用`openpyxl`库读取Excel文件,`os`库处理文件和目录操作,以及`PIL`或`imageio`库来处理图片。以下是基本步骤:
首先,安装必要的库:
```bash
pip install openpyxl pillow
```
然后,编写一个函数来实现这个功能:
```python
import os
import openpyxl
from PIL import Image
def rename_and_move_images(file_path, folder_path):
# 打开Excel文件
book = openpyxl.load_workbook(file_path)
# 获取工作表名称
sheet_name = book.active.title
# 创建目标文件夹,如果不存在的话
if not os.path.exists(folder_path):
os.makedirs(folder_path)
# 遍历每个单元格寻找图片
for row in book[sheet_name].iter_rows():
for cell in row:
if isinstance(cell.value, Image.Image): # 检查是否是图片
img = cell.value
old_filename = img.filename # 当前图片文件名
new_filename = f"{sheet_name}_{cell.column_letter}{cell.row}.jpg" # 新命名格式
# 将图片保存到指定文件夹
img.save(os.path.join(folder_path, new_filename))
# 重命名文件
os.rename(os.path.join(folder_path, old_filename), os.path.join(folder_path, new_filename))
# 使用函数
file_path = 'your_excel_file.xlsx'
folder_path = 'target_folder' # 替换为你的目标文件夹路径
rename_and_move_images(file_path, folder_path)
```
阅读全文