Вкратце: как я могу экспортировать электронную таблицу Google Sheets в базу данных SQLite, не теряя привязанные к ячейкам изображения?
В целом: в Google Sheets, Excel и SQLite все разрешенные изображения привязаны к ячейкам.Кроме того, Sheets поддерживает экспорт в Excel без потери таких изображений;сопутствующие программы, такие как «DB Browser for SQLite» и LibreOffice, также поддерживают привязанные к ячейке изображения.Однако мне не удалось экспортировать лист (или электронную таблицу Excel) в SQLite, хотя я попробовал все очевидные возможности, а также некоторые менее очевидные.В последней категории заслуживают внимания две попытки:
a) Пакет Python openpyxl явно говорит: «Все остальные атрибуты рабочей книги / рабочего листа не копируются - например, изображения, диаграммы».
b) Python'spandas
более перспективен из-за параметра dtype
read_excel
.Предположительно, указав это как object
, следует разрешить сохранение таких объектов, как привязанные к ячейке изображения.
Вот одна из моих (неудачных) попыток использовать панд для достижения желаемого результата:
import sqlite3
import pandas as pd
filename="Test"
con=sqlite3.connect(filename+".db")
wb = pd.read_excel('Test.xlsx',sheet_name = None, header = None, dtype = object)
for sheet in wb:
print(sheet) # Sheet1
# print( wb[sheet].columns )
wb[sheet].to_sql(sheet, con, index=False)
con.commit()
con.close()
Любое решение, будь то на основе Python или нет, будет с радостью принято.