【问题标题】:"No module named bs4(BeautifulSoup) Azure"“没有名为 bs4(BeautifulSoup) Azure 的模块”
【发布时间】:2019-03-14 08:39:34
【问题描述】:

我对 Azure 很陌生。我在将我的 Web 应用程序部署到 azure 时遇到问题。以下是我部署时的日志。

2018-10-09T14:04:05    /home/site/wwwroot
2018-10-09T14:04:05    Found requirements.txt
2018-10-09T14:04:05    Create virtual environment
2018-10-09T14:04:09    Activate virtual environment
2018-10-09T14:04:15    Collecting beautifulsoup4 (from -r requirements.txt (line 1))
2018-10-09T14:04:15      Using cached https://files.pythonhosted.org/packages/21/0a/47fdf541c97fd9b6a610cb5fd518175308a7cc60569962e776ac52420387/beautifulsoup4-4.6.3-py3-none-any.whl
2018-10-09T14:04:15    Collecting PyPDF2 (from -r requirements.txt (line 2))
2018-10-09T14:04:15      Using cached https://files.pythonhosted.org/packages/b4/01/68fcc0d43daf4c6bdbc6b33cc3f77bda531c86b174cac56ef0ffdb96faab/PyPDF2-1.26.0.tar.gz
2018-10-09T14:04:16    Collecting requests (from -r requirements.txt (line 3))
2018-10-09T14:04:17      Using cached https://files.pythonhosted.org/packages/65/47/7e02164a2a3db50ed6d8a6ab1d6d60b69c4c3fdf57a284257925dfc12bda/requests-2.19.1-py2.py3-none-any.whl
2018-10-09T14:04:17    Collecting azure-storage (from -r requirements.txt (line 4))
2018-10-09T14:04:17      Using cached https://files.pythonhosted.org/packages/76/26/482c033f8f3a48d16cf75aad91c3e1256856719f4117fabb4696d33aa5da/azure_storage-0.36.0-py2.py3-none-any.whl
2018-10-09T14:04:17    Collecting json (from -r requirements.txt (line 5))
2018-10-09T14:04:17      Could not find a version that satisfies the requirement json (from -r requirements.txt (line 5)) (from versions: )
2018-10-09T14:04:17    No matching distribution found for json (from -r requirements.txt (line 5))
2018-10-09T14:04:17    You are using pip version 10.0.1, however version 18.1 is available.
2018-10-09T14:04:17    You should consider upgrading via the 'pip install --upgrade pip' command.
2018-10-09T14:04:17    pip install finished
2018-10-09T14:04:17    Finished successfully.
2018-10-09T14:04:18  Running post deployment command(s)...
2018-10-09T14:04:18  Deployment successful.
2018-10-09T14:04:19  App container will begin restart within 10 seconds.

2018-10-09T14:04:31.926761435Z [2018-10-09 14:04:31 +0000] [38] [ERROR] Exception in worker process
2018-10-09T14:04:31.926782635Z Traceback (most recent call last):
2018-10-09T14:04:31.926798836Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
2018-10-09T14:04:31.926807236Z     worker.init_process()
2018-10-09T14:04:31.926811736Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
2018-10-09T14:04:31.926816736Z     self.load_wsgi()
2018-10-09T14:04:31.926821037Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
2018-10-09T14:04:31.926833137Z     self.wsgi = self.app.wsgi()
2018-10-09T14:04:31.926837937Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
2018-10-09T14:04:31.926842337Z     self.callable = self.load()
2018-10-09T14:04:31.926846537Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
2018-10-09T14:04:31.926851038Z     return self.load_wsgiapp()
2018-10-09T14:04:31.926855238Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
2018-10-09T14:04:31.926859638Z     return util.import_app(self.app_uri)
2018-10-09T14:04:31.926863938Z   File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
2018-10-09T14:04:31.926868438Z     __import__(module)
2018-10-09T14:04:31.926933340Z   File "/home/site/wwwroot/application.py", line 2, in <module>
2018-10-09T14:04:31.926943041Z     from bs4 import BeautifulSoup
2018-10-09T14:04:31.926947341Z ModuleNotFoundError: No module named 'bs4'

Beautifulsoup 最初似乎已安装,但当我提出请求时,它会引发错误。我也无法导入其他流行的库。任何帮助表示赞赏:)

【问题讨论】:

    标签: azure azure-devops azure-web-app-service azure-storage


    【解决方案1】:

    您最好提供更多详细信息,例如 requirements.txt 以及您正在使用的操作系统。

    我写了一个包含 Beautifulsoup4 的简单代码(我的环境是 windows 10),它可以很好地工作。我认为您可以将它用于测试目的,以确保 Beautifulsoup4 是否有效。

    大部分步骤都遵循这个article

    步骤如下:

    1.在 git bash 中: 先执行git clone https://github.com/Azure-Samples/python-docs-hello-world,

    然后执行cd python-docs-hello-world

    2.修改application.py文件,添加Beautifulsoup4,代码如下:

      from flask import Flask
      from bs4 import BeautifulSoup
    
      app = Flask(__name__)
    
      @app.route("/")
      def hello():
          soup = BeautifulSoup("<p>it is a bs4 testing</p>")
          return soup.prettify()
    

    3.修改requirements.txt,添加Beautifulsoup4:

    click==6.7
    Flask==1.0.2
    itsdangerous==0.24
    Jinja2==2.10
    MarkupSafe==1.0
    Werkzeug==0.14.1
    beautifulsoup4==4.6.3
    

    4.在git bash中,一一执行以下命令:

    py -3 -m venv venv
    venv/scripts/activate
    pip install -r requirements.txt
    FLASK_APP=application.py flask run
    

    打开网络浏览器,然后导航到http://localhost:5000/ 的示例应用程序。

    这是为了确保它在本地可以正常工作。

    5.然后只需按照article 创建部署凭据/资源组/服务计划/Web 应用程序

    6.如果没有问题,在 git bash 中,将代码推送到 azure:

    git remote add azure <deploymentLocalGitUrl-from-create-step>
    

    然后git push azure master,输出如下:

    7.浏览到 http://.azurewebsites.net 之类的网站,bs4 运行良好:

    【讨论】:

    • 我采用了相同的代码(包括 requirements.txt)并在删除原始部署后重新部署它可以正常工作。我正在使用 Linux 操作系统。不知道为什么会这样。可能是因为我使用的是免费版本。
    • azure 的免费试用订阅?
    • 是的学生版
    • @yatishhr,我想你可以使用我的代码来测试问题是否是由于免费版本造成的。
    猜你喜欢
    • 2020-12-03
    • 2012-07-31
    • 2018-12-30
    • 2015-01-02
    • 2021-04-02
    • 2020-10-28
    • 2018-07-07
    • 1970-01-01
    • 2013-02-11
    相关资源
    最近更新 更多