回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一个应用程序,从中获取图像并添加.xls文件。我在循环中这样做,以便添加多个图像。但是,我发现只有最后一张图像被添加到所有位置。我简化了我的代码并添加到这里,做了同样的事情。这里使用屏幕抓取功能,使用暂停功能,我正在更改屏幕,以便图像会有所不同。它也做同样的事情,只在所有位置添加最后一个屏幕截图。请告诉我哪里出了问题。请原谅我的代码,我不是程序员</p>
<pre><code>import openpyxl
import PIL
from PIL import ImageGrab
from openpyxl.drawing.image import Image
def pause():
programPause = input("Press <enter> key")
column_offset=10
row_offset=20
column_start=3
row_start=3
def screen_capture():
img=ImageGrab.grab()
img.save('test.jpg','JPEG')
wb = openpyxl.Workbook()
ws = wb.active
rowi=row_start
for x in range(1,3):
columnj = column_start
for y in range(1,2):
screen_capture()
img1=Image('test.jpg')
img1.anchor = ws.cell(row=rowi, column=columnj).coordinate
ws.add_image(img1)
columnj = columnj+column_offset
pause()
rowi=rowi+row_offset
wb.save('Save_test_data.xlsx')
wb.close()
</code></pre>