Как написать список URL-адресов в электронную таблицу на диске Google с помощью таблиц - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть список URL-адресов, которые я пытаюсь загрузить в электронную таблицу с таблицами. По какой-то причине вместо обновления ячеек в указанном диапазоне скрипт обновляет только одну ячейку. Соответствующая часть сценария ниже:

wks = sheet.sheet1
wks.update_cells('A1:A5',[[img]])

где img - список URL-адресов. Любая помощь будет принята с благодарностью!

обновлен фрагмент кода

res_list = []
wks = sheet.sheet1
header = wks.cell('A1')
header.value = 'URLs'
for i in res_list:
   wks.update_values(crange='A2:A1000',
   values=np.array([[image_name]]).tolist(), majordim='ROWS')

1 Ответ

0 голосов
/ 12 ноября 2018

update_cells принимают матрицу (список списков).так что удалите лишний внешний список.Это должно работать.

теперь, когда вы пишете каждое значение в каждом столбце, вы должны преобразовать свои значения в основную форму столбца

matrix = list(map(list, zip(*[img])))
wks = sheet.sheet1
wks.update_cells('A1:A5',[img])

иначе измените основное измерение

wks = sheet.sheet1
wks.update_cells('A1:A5',[img], majordim="COLUMNS")

РЕДАКТИРОВАТЬ: обновленный код

res_list = []
wks = sheet.sheet1
header = wks.cell('A1')
header.value = 'URLs'
j=2
for i in res_list:
   image_name = get_new_name() # get the new url/value for next cell
   wks.update_values(crange="A"+str(j), values=np.array([[image_name]]).tolist())
   j+=1

РЕДАКТИРОВАТЬ 2: рабочая версия (переключена на более раннюю версию листов)

    res_list = []
    wks = sheet.sheet1
    h = res_list
    im_name = [str(i) for i in h]
    for i in im_name:
        wks.update_cell('A'+str(im_name.index(i)+1), i)
...