Форум сайта python.su
Сделал на excel2img, перенес на сервер причина понятна сервак на убунту.
3 дня уже бьюсь руки опускаются
пытался asposecells, asposeimagingcloud не получается.
import asposecells # from asposecells import Workbook # from asposecells import SaveFormat, ImageSaveOptions, Workbook from aspose-cells import Workbook, SheetRender, ImageOrPrintOptions, SaveFormat import asposeimagingcloud # from asposeimagingcloud import Work workbook = Workbook("/xls/15101970172_47866020081623.xlsx") # create image options imgOptions = ImageOrPrintOptions() imgOptions.setSaveFormat(SaveFormat.SVG) # load the worksheet to be rendered sheet = workbook.getWorksheets().get(0) # create sheet render object sr = SheetRender(sheet, imgOptions) # convert sheet to PNG image for j in range(0, sr.getPageCount()): sr.toImage(j, "WorksheetToImage-out%s" %(j) + ".png")
Офлайн
лог ошибки?
Офлайн
from asposecells.api import Workbook, SheetRender, ImageOrPrintOptions, SaveFormat # import asposeimagingcloud # from asposeimagingcloud import Work workbook = Workbook("/xls/15101970172_47866020081623.xlsx") # create image options imgOptions = ImageOrPrintOptions() imgOptions.setSaveFormat(SaveFormat.SVG) # load the worksheet to be rendered sheet = workbook.getWorksheets().get(0) # create sheet render object sr = SheetRender(sheet, imgOptions) # convert sheet to PNG image for j in range(0, sr.getPageCount()): sr.toImage(j, "WorksheetToImage-out%s" %(j) + ".png")
Отредактировано Scorp1978 (Янв. 14, 2024 18:07:23)
Офлайн
Не совсем понял ошибку!
У вас есть код который работает на винде - вы его переносите на линукс
На линуксе не работает
Зачем мне ошибка с винды с диском С?
Раз вы переносите проект на линукс то переносить виртуальное окружение нельзя с винды
Вам нужно перенести файлы проекта *.py
на линуксе создать виртуальное окржуение
python3 -m venv venv
далее установить нужные пакеты например на винде делаетет
pip freeze > requirements.txt
а уже на линукксе
pip install -r requirements.txt
и тогда уже запускать (все это внутри вирткального окружения разумеется)
Отредактировано ZerG (Янв. 14, 2024 18:16:47)
Офлайн
я на винде тоже не могу запустить.
Вот простейший код (https://products.aspose.com/cells/ru/python-java/conversion/excel-to-jpg/)
import jpype import asposecells jpype.startJVM() from asposecells.api import Workbook workbook = Workbook("/xls/15101970172_47866020081623.xlsx") workbook.save("Output.jpg") jpype.shutdownJVM()
Офлайн
может есть сервисы бесплатные типа
https://www.convertapi.com/xls-to-jpg
Офлайн
на винде я запускал excel2img, на убунту excel2img работать не будет (pip install excel2img выдает ошибку), начал разбираться с asposecells, вот и пока даже на винде запустить asposecells не получается.
Офлайн
aaaa
ну попробуйте что то типа
pip install openpyxl Pillow
from openpyxl import load_workbook from PIL import Image def excel_to_png(excel_file, sheet_name, output_image): # Load the Excel workbook workbook = load_workbook(excel_file, read_only=True, data_only=True) # Select the desired sheet sheet = workbook[sheet_name] # Create an image from the sheet img = Image.new('RGB', (600, 800), color='white') # Adjust dimensions as needed img.save(output_image) # Save the sheet as an image sheet.sheet_view.showGridLines = False img = Image.open(output_image) img = Image.fromarray(sheet._images[0].image) img.save(output_image) # Example usage excel_to_png('your_file.xlsx', 'Sheet1', 'excel_as_image.png')
Офлайн
Зерги, вот
Traceback (most recent call last):
File “C:\telegram_bot\AuthUtils.py”, line 18, in <module>
excel_to_png('xls/15101970172_47866020081623.xlsx', ‘Sheet1’, ‘excel_as_image.png’)
File “C:\telegram_bot\AuthUtils.py”, line 13, in excel_to_png
sheet.sheet_view.showGridLines = False
^^^^^^^^^^^^^^^^
AttributeError: ‘ReadOnlyWorksheet’ object has no attribute ‘sheet_view’
Офлайн
Ты же под линукс спрашиваешь - под ним и запускай
Нафига мне ошибки винды - может у тя прав нехватает
ПОпробуй так что ли
from openpyxl import load_workbook from openpyxl.drawing.image import Image def excel_to_png(excel_file, sheet_name, output_image): # Load the Excel workbook workbook = load_workbook(excel_file, read_only=True, data_only=True) # Select the desired sheet sheet = workbook[sheet_name] # Create an image from the sheet img = Image(sheet._images[0].image) img.save(output_image) # Example usage excel_to_png('your_file.xlsx', 'Sheet1', 'excel_as_image.png')
Офлайн