XLSX 编写器:使用嵌套循环写入图像

XLSX writer: write images with nested loop

我有一个包含图像 URL 的列表,我想将每个图像插入到 xlsx 文件的新行中(因此第 1 行中的图像 1,第 2 行中的图像 2,等等)。

但是我的嵌套循环出了点问题。在我当前的代码中,每个图像都被插入到每一行中(因此第 1 行中的图像 1、2 和 3,依此类推)。我用这个嵌套循环尝试了很多东西,但无法理解它。您可以在下面找到我到目前为止提出的代码。非常感谢任何帮助!

import xlsxwriter
from io import BytesIO
from urllib.request import urlopen

urls = ['http://resizing.flixster.com/M_qLa6b79ltj089zlncMGyVd7-0=/128x128/v1.YzszMDExO2o7MTg1ODU7MjA0ODs4NzI7ODcy',
 'http://resizing.flixster.com/RiZZxnhbXJxoVeEiiegBPtAMJYI=/128x128/v1.YzszNzAzO2o7MTg1ODU7MjA0ODszMDA7MzAw',
 'http://resizing.flixster.com/_5Pu-PGT3sdzRa0aQHiP8AGGmSI=/128x128/v1.YzszNjk4O2o7MTg1ODU7MjA0ODszMDA7MzAw']

workbook = xlsxwriter.Workbook('test.xlsx')
worksheet = workbook.add_worksheet('Sheet1')

worksheet.write('A1', 'image critic')
for url in urls:
    for row in range(1,len(urls)+1):    
        image_data = BytesIO(urlopen(url).read())
        worksheet.insert_image(f'A{row}', url[row-1], {'image_data': image_data})
workbook.close()

对于那些好奇的人,这些图片 url 指的是从 Rottentomatoes.com

中抓取的影评人

使用enumerate得到每个URL的row值:

import xlsxwriter
from io import BytesIO
from urllib.request import urlopen

urls = ['http://resizing.flixster.com/M_qLa6b79ltj089zlncMGyVd7-0=/128x128/v1.YzszMDExO2o7MTg1ODU7MjA0ODs4NzI7ODcy',
        'http://resizing.flixster.com/RiZZxnhbXJxoVeEiiegBPtAMJYI=/128x128/v1.YzszNzAzO2o7MTg1ODU7MjA0ODszMDA7MzAw',
        'http://resizing.flixster.com/_5Pu-PGT3sdzRa0aQHiP8AGGmSI=/128x128/v1.YzszNjk4O2o7MTg1ODU7MjA0ODszMDA7MzAw']

workbook = xlsxwriter.Workbook('test.xlsx')
worksheet = workbook.add_worksheet('Sheet1')

worksheet.write('A1', 'image critic')
for row, url in enumerate(urls):
    image_data = BytesIO(urlopen(url).read())
    worksheet.insert_image(f'A{row+1}', url, {'image_data': image_data})
workbook.close()

输出: