2012-10-08 16 views
12

Versuch installieren PyPdf2 Modul zu installieren, die ich heruntergeladen habe die Zip und entpackt es, ich ausgeführt python setup.py build und python setup.py install, aber es scheint, dass es noch nicht installiert wurde, wenn ich versuche, es von einem Python-Skript zu importieren, es liefert eine ImportError:Kann nicht PyPdf 2 Modul

import pyPdf 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named pyPdf 

Jede Hilfe bitte.

Ich benutze Python 2.7 unter Windows XP.

+0

gibt es keine Fehler bei der Installation des Moduls, i versucht, es aus der Python-Befehlszeile zu importieren, habe ich jeden möglichen Namen für das Modul (Großbuchstaben) versucht, aber ohne ein Ergebnis :( – geogeek

+0

ja das Modul PDF2-Verzeichnis befindet sich in C: \ Python27 \ Lib \ Site-Pakete wie Sie erraten und ich habe Modul installiert es vorher ohne Probleme – geogeek

+0

@Evert Ich habe ein Update gemacht, danke – geogeek

Antwort

26

Es scheint, dass die README-Datei für PyPDF2 falsch ist. Es schlägt vor, dass

import pyPdf 

sollte funktionieren, aber es nicht. Dieses neue Modul wird importiert als

(wie von der Dokumentstruktur auf GitHub und nach der Überprüfung von mir vorgeschlagen).

Der Bequemlichkeit halber, wenn z.B. mit älteren Code arbeiten, können Sie natürlich tun

import PyPDF2 as pyPdf 
+0

vielen Dank Evert – geogeek

0

Der PyPDF-Installer für Windows funktioniert gut für mich. (Win7-64) http://pybrary.net/pyPdf/

+0

Sie würden wahrscheinlich wollen, aber PyPDF2 verwenden. Könnten Sie vielleicht prüfen, ob die Zusammenführung von Dateien funktioniert? – PascalVKooten

+0

Ich habe versucht, Dateien zu verschmelzen, es funktioniert gut, aber ich hatte einen Fehler beim Zusammenführen von PDFs mit seltsamen Unicode-Zeichen, der Fehler beschrieben hier http://StackOverflow.com/Questions/12781994/Pypdf-Merge-Fehler, habe ich nicht fand eine echte Lösung, also benutzte ich iterxsharp für C# – geogeek

+0

@Dualinity: Das Verschmelzen von Dateien funktioniert wie Charme für mich. Ich habe nicht mit Unicode-Zeichen als der Kommentar oben versucht. –

0

Bis jetzt herausgefunden, was das Problem ist. Müssen prüfen, ob weitere Befehle von PyPDF2 funktionieren. Der Import PyPDF2 sucht nach PyPDF2 Ordner in der Basisposition von Python. In meinem Fall ist es C:\Python27\site-packages\PyPDF2.

Wenn virtualenv aktiviert ist, erstellt pip install PyPDF2 den obigen Ordner nicht. Daher der Fehler. Ich habe den PyPDF2-Ordner und den Ordner PyPDF2-1.26.0.dist-info manuell von meiner virtualenv-Umgebung in den Basisordner kopiert und der Fehler wurde gestoppt. Nur für den Fall, ich erstellte neue virtualenv Umgebung und installiert PyPDF2 mit und ohne virtualenv aktiviert und der Fehler ist weg.

Meine Ordnerstruktur:

  • C: \ Python27 \ site-packages \ PyPDF2
  • C: \ Python27 \ site-packages \ PyPDF2-1.26.0.dist-info

  • C: \ Python27 \ venv2 \ Lib \ Site-Pakete \ PyPDF2

  • C: \ Python27 \ venv2 \ Lib \ Site-Pakete \ PyPDF2-1.26.0.dist-info

Python-Skript ist sehr einfach den Import zu testen:

#import sys 
import PyPDF2 

#print(sys.path) 
print('hello') 

troubleshooted ich die oben die Stackoverflow Antwort mit syspath überprüfen How does python find a module file if the import statement only contains the filename?