由于系统路径的原因,在创建html时出错
问题描述
我正在尝试为一个包构建一个Sphinx文档,但我不断收到错误,可能需要一些帮助。我的项目目录是bb_lite
,代码位于backend
文件夹中。
bb_lite
├── 1.0 docs
├── 2.0 data
├── README.md
└── backend
这是我的backend
文件夹的外观
。
├── README.md
├── __init__.py
├── __pycache__
│ └── __init__.cpython-36.pyc
├── archive
│ ├── cont_pca_transform_w_original_func.py
│ └── model_tuner.py
├── automl_pipeline
│ ├── __init__.py
│ ├── flow.py
│ └── input_json.json
├── data_preparation
│ ├── __init__.py
│ ├── cat_multiclass_label_index_encoding.py
│ ├── cross_validator.py
│ ├── data_samplers.py
│ └── train_test_validator
Icd
到bb_lite
文件夹,创建docs
文件夹和cd
到docs
。从那里我运行sphinx-quickstart
。当它要求分隔源代码目录和构建目录时,我键入y
并按Enter键。当它请求AutoDoc扩展时,我输入y
并完成其他操作。我的docs
看起来像-
.
├── Makefile
├── build
├── make.bat
└── source
├── _static
├── _templates
├── conf.py
└── index.rst
完成后,打开内部的conf.py文件并取消对前三行的注释
import os
import sys
sys.path.insert(0, os.path.abspath('backend'))
使用docs
文件夹作为我的工作目录,我运行以下
sphinx-apidoc -f -o source/ ../backend/
这给了我
Creating file source/backend.rst.
Creating file source/backend.automl_pipeline.rst.
Creating file source/backend.data_preparation.rst.
Creating file source/backend.explain.rst.
Creating file source/backend.explain.k_limes.rst.
Creating file source/backend.explain.surrogate_models.rst.
Creating file source/backend.feature_extraction.rst.
Creating file source/backend.model_tuner.rst.
Creating file source/backend.parameter_tuning.rst.
Creating file source/backend.profiling.rst.
Creating file source/backend.tests.rst.
Creating file source/backend.utilities.rst.
Creating file source/modules.rst.
最后我运行make html
(从docs
目录),这给我留下了以下错误-
运行Sphinx v1.7.4
making output directory...
loading pickled environment... not yet created
loading intersphinx inventory from https://docs.python.org/objects.inv...
intersphinx inventory has moved: https://docs.python.org/objects.inv -> https://docs.python.org/3/objects.inv
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 14 source files that are out of date
updating environment: 14 added, 0 changed, 0 removed
reading sources... [100%] modules
WARNING: autodoc: failed to import module 'backend.utilities'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.automl_pipeline.flow'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.automl_pipeline'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.data_preparation.cat_multiclass_label_index_encoding'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.data_preparation.cross_validator'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.data_preparation.data_samplers'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.data_preparation'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.explain'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.explain.k_limes'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.explain.surrogate_models'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.feature_extraction.cat_frequency_transformer'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.feature_extraction.cont_bulk_interactions'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.feature_extraction.cont_pca_transform'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.feature_extraction.naming_constants'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.feature_extraction'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner.cross_validator'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner.hyperparam_bounds'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner.model_specs'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner.model_tuner_class'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner.model_tuner_pipeline'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner.train_test_validator'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.model_tuner'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.parameter_tuning'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.profiling'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.tests'; the following exception was raised:
No module named 'backend'
WARNING: autodoc: failed to import module 'backend.utilities'; the following exception was raised:
No module named 'backend'
looking for now-outdated files... none found
pickling environment... done
checking consistency... /Users/shubhamgandhi/Desktop/bb_lite/docs/source/modules.rst: WARNING: document isn't included in any toctree
done
preparing documents... done
writing output... [100%] modules
generating indices... genindex
writing additional pages... search
copying static files... done
copying extra files... done
dumping search index in English (code: en) ... done
dumping object inventory... done
build succeeded, 28 warnings.
The HTML pages are in build/html.
我不知道我错在哪里。我看了几部纪录片和博客,但一无所获。当我在docs/build/html
内部打开index.html
时,它没有任何文档。
知道我哪里出错了吗?
解决方案
必须将backend
目录上的目录添加到sys.path
。
如果bb_lite
是backend
和docs
的父目录,则docs/conf.py
中需要:
sys.path.insert(0, os.path.abspath('..'))
相关文章