Смежные вопросы:
Связанные ответы:
Связанные комментарии:
pip install lxml
Последние несколько строк моей ошибки, записанные в pip:
cl: предупреждение командной строки D9025: переопределение ‘/ W3’ с помощью ‘/ w’
lxml.etree.c
C: \ Users \ НАТАН ~ 1 \ AppData \ Local \ Temp \ pip_build_nathanielanderson \ LXML \ SRC \ LXML \ включает \ etree_defs.h (9)
: фатальная ошибка C1083: Невозможно открыть включаемый файл: ‘libxml / xmlversion.h’:
Данный файл или каталог отсутствуетC: \ Python34 \ lib \ distutils \ dist.py: 260: предупреждение пользователя: неизвестно
опция распространения: ‘bugtrack_url’warnings.warn (MSG)
ошибка: команда ‘C: \ Program Files \ Microsoft Visual Studio
10.0 \ VC \ BIN \ cl.exe ‘завершился неудачно с состоянием выхода 2
Поэтому я не могу установить из .egg или путем компиляции …
Я также не могу найти установщик Windows (exe или msi или любой другой) для этой версии Python
Выглядит как Крис делает предоставить прямой exe здесь:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml
Спасибо, Крис! Любые идеи, почему я не могу скомпилировать с помощью pip?
Я также получил эту проблему, но предложенные выше обходные пути не работают и для меня.
Вот моя конфигурация системы:
Я попытался использовать метод в первой ссылке в Смежные вопросы, но это не удалось. Этот метод заключается в создании системной переменной для использования vs2010, и эта переменная фактически копируется из моей исходной конфигурации в Visual Studio 2013.
Тем не менее, в командной строке выдается ошибка с «libxml / xmlversion.h» нет файла или каталога suck
Затем я продолжил поиск в Интернете и получил метод, который работает в моем случае.
загрузка предварительно скомпилированного плагина lxml
Предварительно скомпилированный lxml 3.5: https://pypi.python.org/pypi/lxml/3.3.5#downloads
если ваша система 64-битная, то вы можете получить неофициальную версию для x64 здесь: http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml (это то, что я использую)
установка с помощью команды в командной строке easy_install lxml-3.2.1.win32-py3.3.exe
Если вы используете Python 3.4, это ссылка для скачивания:
Если у вас есть другие настройки, найдите их ВОТ в соответствии с вашими потребностями. 😉
Короткая версия: у вас должна быть библиотека C libxml2
(а также libxslt2
) прежде чем строить lxml
,
Как lxml
установочные документы сказать:
Если вы не используете статический бинарный дистрибутив (например, из бинарного установщика Windows), вам необходимо установить
libxml2
а такжеlibxslt
, особенно:
libxml2
2.6.21 или позже. Это можно найти здесь: http://xmlsoft.org/downloads.html
- Мы рекомендуем `libxml2 2.7.8 или более позднюю версию.
- Если вы хотите использовать XPath, не используйте
libxml2
2.6.27.- Если вы хотите использовать интерфейс синтаксического анализатора каналов, особенно при разборе строк Unicode, не используйте
libxml2
От 2.7.4 до 2.7.6.
libxslt
1.1.15 или позже. Это можно найти здесь: http://xmlsoft.org/XSLT/downloads.html
- Мы рекомендуем
libxslt
1.1.26 или позже.
построить из исходных документов аналогично начнем с:
Для сборки lxml из исходного кода вам нужно правильно установить libxml2 и libxslt, включая файлы заголовков.
Windows (в отличие от большинства других платформ) не поставляется с этими библиотеками. Вы ничего не упоминаете в своих «Фактах» о том, чтобы иметь их.
И сообщение об ошибке, которое вы показали:
C:\Users\NATHAN~1\AppData\Local\Temp\pip_build_nathanielanderson\lxml\src\lxml\includes\etree_defs.h(9) :
fatal error C1083: Cannot open include file: 'libxml/xmlversion.h':
No such file or directory
Тот 'libxml/xmlversion.h'
что он не может найти, является частью libxml2
,
Стоит также отметить, что в тех же документах по установке прямо говорится:
рассмотрите возможность использования бинарных сборок из PyPI или неофициальных бинарных файлов Windows, которые щедро предоставляет Кристоф Гольке.
Итак, тот факт, что вы думали, что Кристоф Гольке не предоставляет двоичные файлы для lxml
подразумевает, что вы не нашли эти документы.
Так что, возможно, вы установили libxml2
, но не таким образом, чтобы lxml2
Сценарий установки может найти его. Но все свидетельства предполагают, что гораздо более вероятно, что у вас просто нет этого.