在azure webjob中导入python模块



过去几周,我一直在尝试在azure上部署一个用python编写的web scraper。我最初尝试在azure应用程序服务中通过构建一个docker镜像来实现这一点。我以前在部署flask rest api时已经成功地使用了这种方法。不幸的是,azure应用程序服务的超时限制意味着web scraper容器被终止,因为当azure试图获得响应时,它不会给出正确的响应——这个选项不起作用。

此后,我尝试建立一个基于windows的应用程序服务,以创建一个azure WebJob。然而,这有一个问题,即python 3.6的上限,我认为这会导致导入问题。我无法导入";请求";模块,这对于刮刀正确工作至关重要。我在为网络作业上传的zip中有一个requirements.txt,但这似乎也不允许导入这个模块。有没有办法从webjob内部导入模块?

以下是我在网络作业日志中收到的错误:

[12/19/2020 16:36:48 > 658fd3: SYS INFO] Run script 'run.py' with script host - 'PythonScriptHost'
[12/19/2020 16:36:48 > 658fd3: SYS INFO] Status changed to Running
[12/19/2020 16:36:48 > 658fd3: ERR ] Traceback (most recent call last):
[12/19/2020 16:36:48 > 658fd3: ERR ]   File "run.py", line 12, in <module>
[12/19/2020 16:36:48 > 658fd3: ERR ]     import requests
[12/19/2020 16:36:48 > 658fd3: ERR ] ModuleNotFoundError: No module named 'requests'

在Filter中搜索高级工具。单击GO链接。然后选择调试控制台并单击CMD。

查找源代码目录路径。然后键入路径:

python -m pip install - requirements.txt
d: |-- home
|-- site
|-- wwwroot
|-- App_Data
|-- jobs
|-- triggered
| -- continuous

最新更新