|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码一直报错:'str' object has no attribute 'rows',不知道到底啥问题?
- import openpyxl
- from PIL import ImageGrab
- # 打开 Excel 文件
- workbook = openpyxl.load_workbook(r'C:\Users\Administrator\Desktop\text.xlsx')
- # 选择要截图的工作表
- worksheet = workbook['试试']
- # 定义截图区域的坐标
- left, upper, right, lower = 0, 0, 2, 9
- # 获取工作表的尺寸
- rows, cols = worksheet.dimensions.rows, worksheet.dimensions.cols
- # 创建一个与工作表相同尺寸的图像
- image = ImageGrab.grab(bbox=(left, upper, right, lower))
- # 保存图像到文件
- image. Save('example.png')
复制代码
代码中出现了错误,因为在获取工作表的尺寸时,使用了 worksheet.dimensions.rows ,但是 worksheet.dimensions 返回的是一个字符串类型,而字符串类型没有 rows 属性。可以使用 worksheet.max_row 和 worksheet.max_column 来获取工作表的最大行数和最大列数。
修改后的代码如下:
- import openpyxl
- from PIL import ImageGrab
- # 打开 Excel 文件
- workbook = openpyxl.load_workbook(r'C:\Users\Administrator\Desktop\text.xlsx')
- # 选择要截图的工作表
- worksheet = workbook['试试']
- # 定义截图区域的坐标
- left, upper, right, lower = 0, 0, 2, 9
- # 获取工作表的尺寸
- rows, cols = worksheet.max_row, worksheet.max_column
- # 创建一个与工作表相同尺寸的图像
- image = ImageGrab.grab(bbox=(left, upper, right, lower))
- # 保存图像到文件
- image.save('example.png')
复制代码
|
|