0

你好 Python Azure 大师,

我想创建一个本地 Azure Python 函数,它从文件中读取 pdf 数据并将其转换为“jpeg”,因此我使用imagemagick和 imagemagick 的 python 活页夹。首先,我创建了 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

你能给出一个解决方案如何解决这个问题!还是有其他方法可以做到这一点?

4

1 回答 1

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
    )

这是我的函数应用程序的结构:

在此处输入图像描述

于 2020-09-28T03:10:27.593 回答