python批量读取文件里的图片_Python如何读入一个文件夹下的多幅图片

展开全部

搬过来的,可以2113看下代码,在5261自己写一个。import os

allFileNum = 0

def printPath(level, path):

global allFileNum

'''

打印一个目录下的所4102有文件1653夹和文件

'''

# 所有文件夹,第一个字段是次目录的级别

dirList = []

# 所有文件

fileList = []

# 返回一个列表,其中包含在目录条目的名称(google翻译)

files = os.listdir(path)

# 先添加目录级别

dirList.append(str(level))

for f in files:

if(os.path.isdir(path + '/' + f)):

# 排除隐藏文件夹。因为隐藏文件夹过多

if(f[0] == '.'):

pass

else:

# 添加非隐藏文件夹

dirList.append(f)

if(os.path.isfile(path + '/' + f)):

# 添加文件

fileList.append(f)

# 当一个标志使用,文件夹列表第一个级别不打印

i_dl = 0

for dl in dirList:

if(i_dl == 0):

i_dl = i_dl + 1

else:

# 打印至控制台,不是第一个的目录

print '-' * (int(dirList[0])), dl

# 打印目录下的所有文件夹和文件,目录级别+1

printPath((int(dirList[0]) + 1), path + '/' + dl)

for fl in fileList:

# 打印文件

print '-' * (int(dirList[0])), fl

# 随便计算一下有多少个文件

allFileNum = allFileNum + 1

if __name__ == '__main__':

printPath(1, '/home/test/')

print '总文件数 =', allFileNum

要实现Python批量读取图片文字并保留格式,可以使用OCR技术对图片进行文字识别,然后将识别出的文本保存为相应格式的文件。 以下是一个示例代码,实现了批量读取指定文件夹下的所有图片并进行OCR文字识别,最后将识别结果保存为txt文件: ```python import pytesseract from PIL import Image import os # 设置tesseract的安装路径 pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe' # 指定待识别图片所在的文件夹路径 img_folder = r'C:\Users\username\Documents\images' # 定义一个函数,用于对单张图片进行OCR文字识别,并将识别结果保存到txt文件中 def recognize_text(image_path): # 打开图片 image = Image.open(image_path) # 进行OCR识别 text = pytesseract.image_to_string(image, lang='eng') # 保存识别结果到txt文件中 with open('result.txt', 'a') as f: f.write(text) f.write('\n\n') # 遍历指定文件夹下的所有图片,进行OCR文字识别 for root, dirs, files in os.walk(img_folder): for file in files: if file.endswith('.jpg') or file.endswith('.png'): image_path = os.path.join(root, file) recognize_text(image_path) ``` 如果要提取Word的所有图片批量转化格式,可以使用Python的docx库来实现。以下是一个示例代码,实现了提取Word文档中的所有图片并将其转化为jpg格式的图片: ```python from docx import Document # 打开Word文档 doc = Document('example.docx') # 定义一个函数,用于将Word文档中的图片保存为jpg格式的图片 def save_image(image, filename): with open(filename, 'wb') as f: f.write(image) # 遍历文档中的所有图片,并将其转化为jpg格式的图片 for i, image in enumerate(doc.inline_shapes): if 'image' in image._element.xml: # 获取图片数据 image_data = image._inline.graphic.graphicData.pic.blipFill.blip.getparent().getnext().getchildren()[0].getchildren()[0] # 将图片数据保存为jpg格式的图片 save_image(image_data, f'image{i}.jpg') ``` 需要注意的是,由于Word文档中的图片可能采用了不同的格式,因此转化为jpg格式的图片可能会失去一些细节。如果需要保留完整的图片格式,可以考虑将图片保存为原格式,或者使用第三方库进行格式转化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值