ImportError:无法导入名称'_priv_parser',循环依赖

0 投票
1 回答
33 浏览
提问于 2025-04-12 19:07

我在Pycharm上遇到了这个错误,我正在使用BotCity框架,但在运行脚本的时候,几乎没开始就出现了以下错误:

> Traceback (most recent call last):
> 
> File "<frozen importlib._bootstrap>", line 1176, in _find_and_load  
> File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
> File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
> File "<frozen importlib._bootstrap_external>", line 940, in exec_module
> File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
> File "D:\path\padroniza_estilo_planilha.py", line 10, in <module>
>     from botcity.document_processing import *
File   "C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\__init__.py",
> line 1, in <module>
>     from .parser import Entry, DocumentParser  # noqa: F401, F403
>     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\parser\__init__.py",
> line 1, in <module>
>     from .document import DocumentParser  # noqa: F401, F403
>     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\parser\document.py",
> line 4, in <module>`
>     from . import _priv_parser
> 
> ImportError: cannot import name '_priv_parser' from partially initialized module`'botcity.document_processing.parser'
> (most likely due to a circular import)
> (C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\parser\__init__.py)

我尝试了很多方法,主要是用 pip install botcity-documentspip install --upgrade botcity-documents 来安装,但效果都不好。尽管安装结束时显示“成功安装”,但实际上并没有解决问题。

1 个回答

0

关键在于关闭杀毒软件(我知道这样做有风险)。在安装的时候(使用pip安装),杀毒软件把创建的文件_priv_parser.py当成威胁,给它隔离了。所以当我运行这个脚本时,立刻就报错了,因为找不到这个文件。最终导致了两个其他文件之间出现了循环依赖的问题(它们都在同一个目录document_processing里)。

撰写回答