Python 从安装requirement.txt后,我正在尝试运行应用程序?

Python 从安装requirement.txt后,我正在尝试运行应用程序?,python,web,tensorflow,flask,websocket,Python,Web,Tensorflow,Flask,Websocket,在安装requirement.txt之后,我正在尝试从以下位置运行应用程序: 我得到以下错误: File "app.py", line 19, in `<module>` from utils import web_socket_client File "C:\Users\anurag\Downloads\skyfall-master\utils\web_socket_client.py", line 8, in <module> from websocket im

在安装
requirement.txt
之后,我正在尝试从以下位置运行应用程序:

我得到以下错误:

File "app.py", line 19, in `<module>`

from utils import web_socket_client

File "C:\Users\anurag\Downloads\skyfall-master\utils\web_socket_client.py", line 8, in <module>

from websocket import WebSocketException, WebSocketConnectionClosedException ImportError: cannot import name 'WebSocketException'`
文件“app.py”,第19行,在``
从utils导入web\u套接字\u客户端
文件“C:\Users\anurag\Downloads\skyfall master\utils\web\u socket\u client.py”,第8行,在
从websocket导入WebSocketException,WebSocketConnectionClosedException导入错误:无法导入名称“WebSocketException”`

是否有其他运行应用程序的方法..如果需要,请更改文件并发送github链接

在Debian Linux和Python 3.6.5上运行应用程序没有问题。也许您需要在python虚拟环境中运行它,以确保某些已安装的包不会干扰。Linux的说明:

  • 将git克隆到本地文件夹:
  • git克隆https://github.com/victordibia/skyfall

  • 在附近的文件夹中创建python3虚拟环境:
  • 使用软件包管理器安装
    python3-venv
    软件包。运行:

    python3-m-venv-skyfall\u-venv

    然后
    源skyfall\u venv/bin/activate

    现在,您进入了虚拟环境,它在shell中指示。做

    (skyfall\u venv):pip安装--升级pip

    如果它不起作用,就去做

    (skyfall\u venv):pip3安装--升级pip

    在你的venv中有最新的pip

    3.然后编辑git前面的
    skyfall/requirements.txt
    删除额外的
    -e
    ,它必须如下所示:

    Flask==0.12.2
    opencv_python==3.4.0.12
    numpy==1.14.2
    tensorflow==1.7.0
    protobuf==3.5.2.post1
    websocket_client==0.47.0
    git+https://github.com/dpallot/simple-websocket-server.git
    
    在venv内运行:

    (skyfall\u venv):pip安装-r requirements.txt
    (或者
    pip3
    ,如果前者不起作用)

    4.你应该看不到任何错误。在venv中运行应用程序:

    (skyfall\u venv):cd skyfall

    (skyfall\u venv):python app.py
    (或者python3,如果前者不起作用)

    我看到带有手势识别的窗口,如果我在应用程序建议的浏览器中打开网址,我就可以玩这个游戏了

    cvcam.py

    import cv2
    
    cap = cv2.VideoCapture(0)
    
    # Check if the webcam is opened correctly
    if not cap.isOpened():
        raise IOError("Cannot open webcam")
    
    while True:
        ret, frame = cap.read()
        frame = cv2.resize(frame, None, fx=0.5, fy=0.5, interpolation=cv2.INTER_AREA)
        cv2.imshow('Input', frame)
    
        c = cv2.waitKey(1)
        if c == 27:
            break
    
    cap.release()
    cv2.destroyAllWindows()