Beheben Sie den Fehler `Ausführbare Graphviz-Dateien werden nicht gefunden` in Python
Graphviz ist ein Softwarepaket mit Open-Source-Tools, die beim Zeichnen von Diagrammen helfen und unter Linux, Windows und macOS verfügbar sind.
Innerhalb von Python können wir Diagramme mit den ausführbaren Graphviz-Dateien neben dem Paket erstellen. Menschen geraten jedoch häufig aus verschiedenen Gründen in Probleme, wenn sie es verwenden.
In diesem Artikel wird erläutert, wie Sie den Fehler Graphviz executables are not found
beheben, wenn Sie unsere Python-Skripte ausführen.
Installieren Sie Graphviz, um den Fehler Graphviz executables are not found
in Python zu lösen
Bevor wir Ihnen zeigen, wie Sie den Fehler beheben können, lassen Sie uns einen Code schreiben, um ein einfaches Diagramm mit dem Graphviz-Python-Paket zu erstellen (vorausgesetzt, Sie haben das Graphviz-Python-Paket installiert).
import graphviz
dot = graphviz.Digraph(comment="The Round Table")
dot.node("A", "King Arthur")
dot.node("B", "Sir Bedevere the Wise")
dot.node("L", "Sir Lancelot the Brave")
dot.edges(["AB", "AL"])
dot.edge("B", "L", constraint="false")
print(dot.source)
dot.render("doctest-output/round-table.gv", view=True)
Die Ausgabe des obigen Codes:
// The Round Table
digraph {
A [label="King Arthur"]
B [label="Sir Bedevere the Wise"]
L [label="Sir Lancelot the Brave"]
A -> B
A -> L
B -> L [constraint=false]
}
Traceback (most recent call last):
File "C:\Python310\lib\site-packages\graphviz\backend\execute.py", line 81, in run_check
proc = subprocess.run(cmd, **kwargs)
File "C:\Python310\lib\subprocess.py", line 501, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Python310\lib\subprocess.py", line 969, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Python310\lib\subprocess.py", line 1438, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] The system cannot find the file specified
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "c:\Users\akinl\Documents\HTML\python\graphz.py", line 11, in <module>
dot.render('doctest-output/round-table.gv', view=True)
File "C:\Python310\lib\site-packages\graphviz\_tools.py", line 171, in wrapper
return func(*args, **kwargs)
File "C:\Python310\lib\site-packages\graphviz\rendering.py", line 122, in render
rendered = self._render(*args, **kwargs)
File "C:\Python310\lib\site-packages\graphviz\_tools.py", line 171, in wrapper
return func(*args, **kwargs)
File "C:\Python310\lib\site-packages\graphviz\backend\rendering.py", line 324, in render
execute.run_check(cmd,
File "C:\Python310\lib\site-packages\graphviz\backend\execute.py", line 84, in run_check
raise ExecutableNotFound(cmd) from e
graphviz.backend.execute.ExecutableNotFound: failed to execute WindowsPath('dot'), make sure the Graphviz executables are on your systems' PATH
Der wichtige Teil der Fehlermeldung ist unten:
graphviz.backend.execute.ExecutableNotFound: failed to execute WindowsPath('dot'), make sure the Graphviz executables are on your systems' PATH
Das Problem ist, dass die Graphviz executables
für den Python-Code nicht verfügbar sind und nicht in der PATH
-Variablen vorhanden sind. Die Variable PATH
ermöglicht uns den Zugriff auf Software aus jedem Verzeichnis außer dem ausführbaren Verzeichnis der Software.
Wenn Sie Graphviz nicht haben, müssen Sie es daher installieren. Sie müssen es zum PATH
Ihres Systems hinzufügen, wenn Sie es installiert haben.
Folglich benötigen wir zwei Dinge, um einen Graphviz-Code erfolgreich auszuführen.
- Die Bibliothek
- Die Software selbst
Die Bibliothek haben wir bereits via pip
:
pip install graphviz
Um Graphviz zu installieren, gehen Sie zu seiner Download-Seite und befolgen Sie die Download-Anweisungen für jedes Betriebssystem. Für Linux-Betriebssysteme (z. B. Ubuntu, Fedora) können Sie die folgenden Befehle verwenden:
sudo apt install graphviz
sudo yum install graphviz
Für macOS können Sie den folgenden Befehl verwenden.
sudo port install graphviz
Wenn Sie jedoch Homebrew installiert haben, können Sie Folgendes verwenden:
brew install graphviz
Es gibt verschiedene Mittel und Prozesse, um es für Windows zu installieren, über Chocolatey, Windows Package Manager, Cygwin oder typische Windows-Pakete. Hier verwenden wir das typische Installationspaket (64-Bit-Version 5.0.0), das ungefähr 4,728 MB groß ist.
-
Öffnen Sie die Installationsdatei und stimmen Sie der Lizenzvereinbarung zu.
-
Fügen Sie Graphviz zum System
PATH
hinzu, was sehr wichtig ist, damit Ihr Code funktioniert. Abhängig von Ihrer Arbeitsumgebung können Sie das SystemPATH
für alle Benutzer oder aktuelle Benutzer hinzufügen.Das folgende Bild wird für alle Benutzer ausgewählt.
-
Installationsverzeichnis auswählen und installieren.
Um zu überprüfen, ob sich Graphviz in unserer Umgebungsvariablen befindet, können wir die folgenden Schritte ausführen:
-
Suchen Sie nach
Umgebungsvariablen
. -
Gehen Sie auf die markierte Schaltfläche
Umgebungsvariablen
. -
Gehen Sie in die markierte Zeile mit dem Variablennamen
Path
und doppelklicken Sie darauf. -
Wenn Sie Graphviz kürzlich installiert haben, sollten Sie den Installationspfad (hervorgehoben) am Ende verwenden, wie im Bild unten
Nachdem wir nun überprüft haben, dass sich Graphviz innerhalb unseres Systempfads befindet, wie in einem Unterabschnitt der Fehlermeldung vorgeschlagen, stellen Sie sicher, dass sich die ausführbaren Graphviz-Dateien auf dem PATH Ihres Systems befinden
, schließen Sie Ihre IDE und führen Sie Ihren Graphviz-basierten Code erneut aus .
Der zuvor ausgeführte Code, der zu einem Fehler führte, sollte jetzt als PDF gerendert und exportiert werden.
Und Ihre Ausgabe sollte ohne Fehler sein.
// The Round Table
digraph {
A [label="King Arthur"]
B [label="Sir Bedevere the Wise"]
L [label="Sir Lancelot the Brave"]
A -> B
A -> L
B -> L [constraint=false]
}
Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.
LinkedInVerwandter Artikel - Python Error
- Adresse wird bereits verwendet Fehler in Python
- AttributeError: __Exit__ in Python
- AttributeError: 'Dict'-Objekt hat kein Attribut 'Append' in Python
- AttributeError: 'NoneType'-Objekt hat kein Attribut 'Text' in Python
- AttributeError: Int-Objekt hat kein Attribut
- AttributeError: Modul Urllib hat keine Attributanforderung