在Azure函数中安装Pandoc



我正在使用包pypandoc将DOC/DOCX文件转换为HTML。这样做的先决条件是已经安装了Pandoc。当使用requirements.txt文件安装两个包时,它在本地工作。然而,当我将其部署为Azure函数时,它总是给出一个"未找到模块"。错误。(pypandoc无法在相同路径中找到pandoc,因为它被安装在其他地方。)

这似乎是一个已知的问题。Pandoc不会安装在与Pyandoc相同的路径上,有多种解决方案建议。但它们只是局部的。

选择尝试:

  1. 使用pandoc_download

    from pypandoc.pandoc_download import download_pandoc
    
  2. wdc使用。这不能解决问题。

  3. 使用包含Pandoc的wheel文件

现在我正在使用猛犸转换,这在准确性上略低,但部署在Az上。我如何才能让Pypandoc作为Azure功能工作?我如何在Pypandoc可以找到的地方安装Pandoc ?或者,我怎么告诉Pypandoc去哪里找?

我在我身边测试,我通过命令pip install pypandocpip install pandoc在本地安装pandocpypandoc,但不使用requirements.txt安装它们。函数在本地运行良好。

然后我通过运行命令pip freeze > requirements.txt生成requirements.txt。然后运行func azure functionapp publish <your function app name> --build remote命令将功能部署到azure上,azure会根据requirements.txt的内容安装模块。部署完成后,功能在azure portal上运行成功。

相关内容

  • 没有找到相关文章

最新更新