Trotz der Liesmich für das Modul, bekomme ich weiterhin "magische Dateien nicht gefunden". Im Abschnitt readme und "Abhängigkeiten" heißt es:
Kopieren Sie unter Windows die Dateien magic1.dll, regex2.dll und zlib1.dll aus den Zip-Dateien für Binärdateien und Abhängigkeiten, die vom Projekt "Datei für Windows" bereitgestellt werden, in Ihren Pfad. Sie müssen die Datei magic aus [binary-zip] \ share \ misc kopieren und den Speicherort an Magic übergeben (magic_file = ...) Wenn Sie ein 64-Bit-Build von Python verwenden, benötigen Sie 64 -Bit libmagic Binärdateien, die hier gefunden werden können: Ссылка (Anmerkung: ungetestet).
Die folgenden Erläuterungen wären hilfreich:
1) Der Link Dateien für Windows enthält einen Link zu "file-5.03-bin.zip" (bezeichnet als "Binaries"), einen Link zu "file-5.03-dep.zip" (mit der Bezeichnung "Dependencies") und einen Link unten rechts auf "file-4.26-dep.zip", der auch als "Abhängigkeiten" bezeichnet ist Datei". Ich nehme an, dass der letzte ein Fehler ist, der auf 5.03-dep zeigen sollte, anstatt eine zweite zweite abhängige Datei, die benötigt wird. Korrekt?
2) Es scheint eine 32-Bit-Version und eine 64-Bit-Version der Abhängigkeiten-Dateien zu geben. Ich weiß nicht, welche Version mit 64-Bit-Windows, sondern 32-Bit-Python verwendet werden soll. Die obigen Anweisungen sagen 64 Bit Python, aber das sagt 64-Bit-Windows. Welche sollte ich installieren?
3) Das oben genannte sagt, die DLLs in den PATH zu setzen; Die 64-Bit-Anweisungen sagen, sie in C: \ Windows \ System32 zu setzen. Ist es wichtig, solange der Ordner PATH'd ist? (Jemand anderes schlug vor, dass es NICHT hilft, sie in \ Windows \ System32 zu platzieren: Python-Magie Installationsfehler - ImportError: konnte libmagic nicht finden ).
4) Das obige schlägt vor, dass die einzige andere Datei, die in den Binärdateien und Abhängigkeiten benötigt wird, außer den 3 DLLs, die Datei magic
ist. Also brauche ich auch nicht die Datei magic.mgc
, die auch in der binary zip \ share \ misc ist? Ich brauche auch keine der anderen Dateien in diesen zwei ZIPs, wie die Datei file
?
5) Das obige schlägt vor, die Datei magic
aus dem binären ZIP zu holen und ihren Pfad in eine Codezeile zu setzen, die sagt: Magic(magic_file=...)
. Ich nehme an, das ist tatsächlich magic.Magic(magic_file='C:\path\goes\here\magic')
UND ich nehme an, das kann irgendwo im Dateisystem gehen.
6) .. und ich nehme an, ich zeige wieder auf die Datei magic
anstatt auf die Datei magic.mgc
.
Sind diese Annahmen richtig?
1) Ja, ich denke, Sie sollten 5.03 herunterladen. Nicht 4.26.
2) Wenn Sie 32-Bit-Python haben, dann laden Sie das 32-Bit-Zeug herunter.
3) Solange die DLLs in der System-PATH-Variable sind, ist alles in Ordnung.
4) Ja. Ich denke du hast recht.
5) Ich denke, das ist wahr.
6) Sie sind völlig verschiedene Dateien. Magie scheint die richtige zu sein, weil sie Einstellungen und Informationen darüber zu enthalten scheint, was die Magie tun soll.
Tags und Links dll windows python-2.7 python-magic libmagic