首页 > 解决方案 > 无法获取文本提供程序,中止

问题描述

我将 kivy 和 pygame 安装到 python 并尝试运行它:

import kivy
from kivy.app import App
from kivy.uix.label import Label


class MyApp(App):
    def build(self):
        return Label(text="fcguh")


if __name__ == "__main__":
    MyApp().run()

它显示一条错误消息,说“没有名为'kivy'的模块”。

然后我试图在网上找到解决方案,做了一些我想不起来的事情,错误信息变成了这样:

[INFO   ] [Logger      ] Record log in C:\Users\dekmeymey\.kivy\logs\kivy_19-06-12_4.txt 
[INFO   ] [Kivy      ] v1.11.0 
[INFO   ] [Kivy        ] Installed at "C:\Users\dekmeymey\AppData\Local\Programs\Python\Python37\lib\site-packages\kivy\__init__.py" 
[INFO   ] [Python      ] v3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)] 
[INFO   ] [Python      ] Interpreter at "C:\Users\dekmeymey\AppData\Local\Programs\Python\Python37\pythonw.exe" [INFO   ] [Factory     ] 184 symbols loaded 
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif (img_sdl2, img_pil, img_ffpyplayer ignored) 
[CRITICAL] [Text        ] Unable to find any valuable Text provider. 
Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes sdl2 - ImportError: DLL load failed: The specified module could not be found.   File "C:\Users\dekmeymey\AppData\Local\Programs\Python\Python37\lib\site-packages\kivy\core\__init__.py", line 63, in core_select_lib
            fromlist=[modulename], level=0)   File "C:\Users\dekmeymey\AppData\Local\Programs\Python\Python37\lib\site-packages\kivy\core\text\text_sdl2.py", line 13, in <module>
            from kivy.core.text._text_sdl2 import (_SurfaceContainer, _get_extents,

        pil - ModuleNotFoundError: No module named 'PIL'   File "C:\Users\dekmeymey\AppData\Local\Programs\Python\Python37\lib\site-packages\kivy\core\__init__.py", line 63, in core_select_lib
            fromlist=[modulename], level=0)   File "C:\Users\dekmeymey\AppData\Local\Programs\Python\Python37\lib\site-packages\kivy\core\text\text_pil.py", line 7, in <module>
            from PIL import Image, ImageFont, ImageDraw

[CRITICAL] [App         ] Unable to get a Text provider, abort. 

我尝试再次安装 kivy,以防万一我错过了任何东西但没有任何变化。有人可以帮忙吗?我有一个学校项目要完成。

编辑:在我能够安装我的 kivy 之前,我的 pip 也不起作用。我在互联网上尝试了无数种方法来解决这个问题,但我只是卸载并重新安装了 python 以使其正常工作。

我找到了答案!!

我将其复制到命令提示符中

bitsadmin /transfer "GetBatch" "https://git.io/vDDjn" "%cd%\python\kivy.bat"
cd python

然后在 C: 中搜索 kivy。之后,我复制了我的 pyhton 文件并将其放入 kivy 文件夹中。运行它,它工作!

标签: pythonkivy

解决方案


有趣的是:当我编辑你的问题时(import s 在开头),它不会让我保存编辑,因为标题:“ Kivy not working ”(必须更改)。我发现这不仅仅是好的,因为Kivy 正在工作,问题就在你身边。我不明白的是:为什么首先允许该标题。

错误突出:

pil - ModuleNotFoundError: No module named 'PIL'

这很常见。Pillow(以前称为PIL)是Kivy的依赖项之一。

检查[Kivy]: Installation on Windows - 安装 kivy 稳定版,更多细节,注意python -m pip install ...步骤。
其中一个将安装Pillow - 或者如果没有发生(尽管它不应该),手动安装它:(python -m pip install pillow可能也适用于其他包)。


推荐阅读