2016-11-23 3 views
2

J'utilise Python version 3.5.2.impossible de trouver l'erreur vcvarsall.bat

Je suis en train d'assembler des mots et des paragraphes dans des documents MSWord.

Avant de pouvoir faire cela, j'ai besoin d'installer le module docx.

En ligne de commande je l'ai pointé chemin:

C:\Users\d\AppData\Local\Programs\Python\Python35-32\Scripts 

et le type:

pip install python-docx. 

Après le retour de frapper, je reçois ce message d'erreur (sortie complète ci-dessous):

"unable to find vcvarsall.bat". 

Comment réparer cette erreur?


c:\Users\D\AppData\Local\Programs\Python\Python35-32\Scripts>pip install 
python-docx 
Collecting python-docx 
    Using cached python-docx-0.8.6.tar.gz 
Collecting lxml>=2.3.2 (from python-docx) 
    Using cached lxml-3.6.4.tar.gz 
Installing collected packages: lxml, python-docx 
    Running setup.py install for lxml ... error 
    Complete output from command c:\users\d\appdata\local\programs\python 
\python35-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\ 
D\\AppData\\Local\\Temp\\pip-build-9yk1nedc\\lxml\\setup.py';f=getattr(to 
kenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();ex 
ec(compile(code, __file__, 'exec'))" install --record C:\Users\D\AppData\ 
Local\Temp\pip-pepj9c3f-record\install-record.txt --single-version-externally-ma 
naged --compile: 
    Building lxml version 3.6.4. 
    Building without Cython. 
    ERROR: b"'xslt-config' is not recognized as an internal or external command, 
\r\noperable program or batch file.\r\n" 
    ** make sure the development packages of libxml2 and libxslt are installed * 
* 
    Using build configuration of libxslt 
    running install 
    running build 
    running build_py 
    creating build 
    creating build\lib.win32-3.5 
    creating build\lib.win32-3.5\lxml 
    copying src\lxml\builder.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\cssselect.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\doctestcompare.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\ElementInclude.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\pyclasslookup.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\sax.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\usedoctest.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\_elementpath.py -> build\lib.win32-3.5\lxml 
    copying src\lxml\__init__.py -> build\lib.win32-3.5\lxml 
    creating build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\__init__.py -> build\lib.win32-3.5\lxml\includes 
    creating build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\builder.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\clean.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\defs.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\diff.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\ElementSoup.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\formfill.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\html5parser.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\soupparser.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\usedoctest.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\_diffcommand.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\_html5builder.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\_setmixin.py -> build\lib.win32-3.5\lxml\html 
    copying src\lxml\html\__init__.py -> build\lib.win32-3.5\lxml\html 
    creating build\lib.win32-3.5\lxml\isoschematron 
    copying src\lxml\isoschematron\__init__.py -> build\lib.win32-3.5\lxml\isosc 
hematron 
    copying src\lxml\lxml.etree.h -> build\lib.win32-3.5\lxml 
    copying src\lxml\lxml.etree_api.h -> build\lib.win32-3.5\lxml 
    copying src\lxml\includes\c14n.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\config.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\dtdvalid.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\etreepublic.pxd -> build\lib.win32-3.5\lxml\includ 
es 
    copying src\lxml\includes\htmlparser.pxd -> build\lib.win32-3.5\lxml\include 
s 
    copying src\lxml\includes\relaxng.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\schematron.pxd -> build\lib.win32-3.5\lxml\include 
s 
    copying src\lxml\includes\tree.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\uri.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\xinclude.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\xmlerror.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\xmlparser.pxd -> build\lib.win32-3.5\lxml\includes 

    copying src\lxml\includes\xmlschema.pxd -> build\lib.win32-3.5\lxml\includes 

    copying src\lxml\includes\xpath.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\xslt.pxd -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\etree_defs.h -> build\lib.win32-3.5\lxml\includes 
    copying src\lxml\includes\lxml-version.h -> build\lib.win32-3.5\lxml\include 
s 
    creating build\lib.win32-3.5\lxml\isoschematron\resources 
    creating build\lib.win32-3.5\lxml\isoschematron\resources\rng 
    copying src\lxml\isoschematron\resources\rng\iso-schematron.rng -> build\lib 
.win32-3.5\lxml\isoschematron\resources\rng 
    creating build\lib.win32-3.5\lxml\isoschematron\resources\xsl 
    copying src\lxml\isoschematron\resources\xsl\RNG2Schtrn.xsl -> build\lib.win 
32-3.5\lxml\isoschematron\resources\xsl 
    copying src\lxml\isoschematron\resources\xsl\XSD2Schtrn.xsl -> build\lib.win 
32-3.5\lxml\isoschematron\resources\xsl 
    creating build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schematron 
-xslt1 
    copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_abstra 
ct_expand.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schema 
tron-xslt1 
    copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_dsdl_i 
nclude.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schematro 
n-xslt1 
    copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_schema 
tron_message.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-sch 
ematron-xslt1 
    copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_schema 
tron_skeleton_for_xslt1.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\ 
xsl\iso-schematron-xslt1 
    copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_svrl_f 
or_xslt1.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schemat 
ron-xslt1 
    copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\readme.txt 
-> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schematron-xslt1 
    running build_ext 
    building 'lxml.etree' extension 
    error: Unable to find vcvarsall.bat 
    ---------------------------------------- 
Command "c:\users\d\appdata\local\programs\python\python35-32\python.exe 
-u -c "import setuptools, tokenize;__file__='C:\\Users\\D\\AppData\\Local 
\\Temp\\pip-build-9yk1nedc\\lxml\\setup.py';f=getattr(tokenize, 'open', open)(__ 
file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file_ 
_, 'exec'))" install --record C:\Users\D\AppData\Local\Temp\pip-pepj9c3f- 
record\install-record.txt --single-version-externally-managed --compile" failed 
with error code 1 in C:\Users\D\AppData\Local\Temp\pip-build-9yk1nedc\lxm 
l\ 
+0

Ce problème est bien connu avec l'installation du 'lxml' bibliothèque Python sous Windows. Une recherche rapide sur 'python-docx windows lxml install' vous donnera tout ce dont vous avez besoin, y compris cette autre question par exemple: http://stackoverflow.com/questions/27589971/unable-to-install-python-docx. – scanny

+0

Merci pour les commentaires. Donc, il semble que je dois installer lxml avant de lancer pip installer python-docx mais quel lxml dois-je utiliser et comment puis-je extraire pour l'installer? Merci Le lien lxml est ci-dessous: http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml – Johnseito

Répondre

1

Ce problème est bien connu avec l'installation de la bibliothèque Python lxml sous Windows.

La version TL; DR vous permet d'installer lxml à partir d'un "paquet d'installation binaire" qui est pré-compilé et prend soin de tous les détails pour vous.

Vous pouvez en trouver un de ceux qui sont ici: http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

Le segment « cp » signifie « C Python » (Python régulière, par opposition à PyPy par exemple) et la version, donc si vous utilisez Python 2.7 vous voulez un des paquets avec -cp27- dans le nom. Il y en a deux, un pour 32 bits et un pour 64 bits. Vous voulez probablement 32 bits parce que that's the default Python install on Windows.

Une fois que vous téléchargez le package d'installation binaire (« roue »), vous installer à l'aide pip, par exemple .:

pip install lxml‑3.6.4‑cp27‑cp27m‑win32.whl 
+0

Je ne fais que commencer avec Python. J'utilise la version Python ** 3.5.2 ** et le système d'exploitation Windows 7 ** 64 bits **. Donc, selon ce que j'utilise, j'ai téléchargé 'lxml-3.6.4-cp35-cp35m-win_amd64.whl' et j'ai ajouté ce fichier dans le répertoire Scripts C: \ Users \ d \ AppData \ Local \ Programs \ Python \ Python35-32 \ Scripts puis dans l'invite de commande pointant vers ce dossier, je tape 'pip installer lxml-3.6.4-cp35-cp35m-win_amd64.whl' et a reçu un message d'erreur: ** _ lxml-3.6.4-cp35-cp35m-win_amd64.whl Ce n'est pas une roue supportée sur cette plate-forme ._ ** – Johnseito

+0

@Johnseito Je ne pense pas que je puisse vous aider avec ça, il y a juste trop de variables. Je commencerais par déplacer le fichier .whl ailleurs, comme votre dossier Desktop ou Documents. Il n'a pas besoin d'être dans un endroit spécial et il est difficile de dire si le dossier "spécial" est maintenant dans le problème. Ensuite, je soupçonne que le Python que 'pip' utilise n'est pas l'installation de la version 3.5.2; vous pouvez avoir plusieurs installations Python sur une machine. L'autre chose que je peux penser est la version de pip peut-être trop vieux, essayez 'pip --version' et mettre à jour si ce n'est pas au moins la version 8.quelque chose. – scanny

+0

Ok, Normalement quand j'ai installé Python 3.5.2 il vient avec pip version 8.1.1 et puis je peux mettre à jour à 9.0.1. Avec la version pip et peu importe où je mets le fichier, le même message d'erreur se produit. Je vais mettre ce message d'erreur dans Google et faire des recherches à ce sujet. – Johnseito