2016-07-18 3 views
1

Я пытаюсь использовать функцию .read_html() в библиотеке pandas и продолжать получать эту ошибку, когда я запускаю код в оболочка. Я видел, что вам нужно установить lxml, поэтому я сделал это с помощью apt-get. Но потом, когда я попытался запустить его снова, я получил ту же ошибку.Может кто-нибудь объяснить, почему я получаю эту ошибку [ImportError: lxml не найден, пожалуйста, установите его]

(trusty)[email protected]:~$ sudo apt-get -y install python-lxml 
[sudo] password for mdz5032: 
Reading package lists... Done 
. 
. 
. 
python-lxml is already the newest version. 
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. 

Вот код, который я использую

import pandas as pd 
import pandas_datareader.data as web 
import quandl 


df = quandl.get("FMAC/HPI_PA", authtoken="") 

fiddy_states = pd.read_html('https://simple.wikipedia.org/wiki/List_of_U.S._states') 

Я вынул ключ апи, но может опубликовать его, если это необходимо.

Вот полный TraceBack

Traceback (most recent call last): 
    File "/home/mdz5032/pandasPractice.py", line 9, in <module> 
    fiddy_states = pd.read_html('https://simple.wikipedia.org/wiki/List_of_U.S._states') 
    File "/usr/local/lib/python3.4/dist-packages/pandas/io/html.py", line 874, in read_html 
    parse_dates, tupleize_cols, thousands, attrs, encoding) 
    File "/usr/local/lib/python3.4/dist-packages/pandas/io/html.py", line 726, in _parse 
    parser = _parser_dispatch(flav) 
    File "/usr/local/lib/python3.4/dist-packages/pandas/io/html.py", line 685, in _parser_dispatch 
    raise ImportError("lxml not found, please install it") 
ImportError: lxml not found, please install it 
+0

Вы используете virtualenv? Что происходит, когда вы запускаете '' python -c 'import lxml'''? Можете ли вы поместить сообщение об ошибке? –

+0

Вы проверили, к какой папке 'apt-get' устанавливается? Бывает, что это может быть просто сохранение установленных модулей в неправильной папке - это случилось со мной в прошлом. Вы можете обойти это, используя pip вместо apt-get как ваш менеджер пакетов Python. –

+0

@notorious, когда я делаю python -c 'import lxml' Я не получаю никаких ошибок – Mark

ответ

2
sudo apt-get install python3-lxml 

Вы установили LXML для python2, но ваш код работает под Python3.

+0

. Я просто попробовал это, и теперь я получаю новую ошибку с этой установкой. [E: Не удалось получить некоторые архивы, возможно, запустить apt-get update или попробовать с -fix-missing? ] Пробовал делать обновление, но не купил – Mark

+0

Вот и другая часть ошибки. Установите эти пакеты без проверки? [y/N] y Err http://archive.ubuntu.com/ubuntu/ trusty-updates/main python3-lxml amd64 3.3.3-1ubuntu0.1 Не удалось решить 'archive.ubuntu.com' Err http : //archive.ubuntu.com/ubuntu/ trusty-security/main python3-lxml amd64 3.3.3-1ubuntu0.1 Не удалось решить 'archive.ubuntu.com' E: Не удалось получить http: // archive. ubuntu.com/ubuntu/pool/main/l/lxml/python3-lxml_3.3.3-1ubuntu0.1_amd64.deb Не удалось разрешить 'archive.ubuntu.com' – Mark

+0

wait, я использовал apt-get -f install и исправил пакет , Спасибо за помощь! – Mark

 Смежные вопросы

  • Нет связанных вопросов^_^