Функция Azure Python: невозможно открыть изображение «: нет такого файла или каталога @ error/blob.c/OpenBlob /3537

#python-3.x #azure-functions #magickwand

#python-3.x #azure-функции #волшебная палочка

Вопрос:

Привет, гуру Python Azure,

Я хочу создать локальную функцию Azure Python, которая считывает данные pdf из файла и преобразует их в «jpeg». для этого я использую imagemagick и связующее средство python imagemagick. Сначала я создаю функцию python, которая успешно выполняется локально без «Локальной функции Azure Python». Затем я преобразовываю код в локальную функцию Azure Python» запустите ее и получите следующее сообщение.

 unable to open image 'data/Stephan.pdf': No such file or directory @ error/blob.c/OpenBlob/3537
  

Ниже приведен код функции Python:

 def convertToJPEG(pdf_url):
    try:
        print(pdf_url) 
        pdf = wi(filename= pdf_url, resolution= 300)
        print('Read Succesfull')
        pdfImage = pdf.convert('jpeg')
        print('Converted')
        imageBlobs = []
        for img in pdfImage.sequence:
            imgPage = wi(image=img)
            imageBlobs.append(imgPage.make_blob('jpeg'))
    
        return imageBlobs
  

Не могли бы вы дать решение, как решить эту проблему! Или есть другие способы сделать это?

Ответ №1:

Установите pdf2image и poppler,

Затем сделайте это:

 import logging

import azure.functions as func
from pdf2image import convert_from_path

def main(req: func.HttpRequest) -> func.HttpResponse:
    path = 'data/Stephan.pdf'
    pages = convert_from_path(path, 500)
    for page in pages:
        page.save('data/out.jpg', 'JPEG')
    return func.HttpResponse(
            "This HTTP triggered function executed successfully",
            status_code=200
    )
  

Это структура моего функционального приложения:

введите описание изображения здесь