我得到了一个包含许多没有文档的python文件的项目。我注意到该文件夹包含manage.py
所以我假设它是一个 Django 项目。我想设置环境并运行它。但是,很难找出合适的软件包。
例如,首先我安装了最新版本的deepctr 0.8.0。然后我想运行该项目,它显示错误:ImportError: cannot import name 'SparseFeat' from 'deepctr.inputs'
.经过一番研究,我发现这是deepctr版本问题。我降级到deepctr 0.7.0,错误消失了。
然后出现了一个新的错误:"RuntimeError: get_session is not available when using TensorFlow 2.0.
然后按照这个问题的建议 https://github.com/OlafenwaMoses/ImageAI/issues/367,我降级到 TensorFlow 1.13
然后这个错误消失了,但出现了一个新错误:ValueError: ('Unrecognized keyword arguments:', dict_keys(['ragged']))
。然后在查看此问题后 https://github.com/tensorflow/tensorflow/issues/33479 似乎张量流版本应该是 1.15。最后,项目可以正常运行。
所以我必须尝试不同版本的 python 包并搜索错误消息。有没有办法知道 Django 项目使用的 python 包版本?
如果你只从以前的程序员那里继承了代码,而没有任何支持文件,在我看来你就不走运了。只有几条可能的道路可以走:
-
尝试手动找出哪个环境可以工作(似乎您正在这样做(
-
获取最后一个工作示例,并尝试从 venv 获取已安装的软件包。即使它是某种非工作副本,您也可以进入 venv sub dirs,看看里面有什么
-
改进代码,直到它适用于最新版本(可能是您最终想要的位置(。
看不到任何其他可能性。
我在尝试运行 DeepMatch 的演示笔记本时遇到了同样的问题。
这是修复:from deepctr.feature_column import SparseFeat, VarLenSparseFeat