2011-02-10 5 views
0

При попытке использовать «python feedparser» существует куча ошибок; а во время установки нет жалобы. я сделать некоторые вещи, как это:python feedparser error install

import feedparser 
url = "http://blogsearch.google.dk/blogsearch_feeds?" + \ 
"q=visitdenmark&output=atom" 
f = feedparser.parse(url) 

и ошибка:

f = feedparser.parse(url) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.6/dist-packages/feedparser.py", line 3798, in parse 
     feedparser.feed(data.decode('utf-8', 'replace')) 
    File "/usr/local/lib/python2.6/dist-packages/feedparser.py", line 1851, in feed 
     sgmllib.SGMLParser.feed(self, data) 
    File "/usr/lib/python2.6/sgmllib.py", line 104, in feed 
     self.goahead(0) 
    File "/usr/lib/python2.6/sgmllib.py", line 143, in goahead 
     k = self.parse_endtag(i) 
    File "/usr/lib/python2.6/sgmllib.py", line 320, in parse_endtag 
     self.finish_endtag(tag) 
    File "/usr/lib/python2.6/sgmllib.py", line 360, in finish_endtag 
     self.unknown_endtag(tag) 
    File "/usr/local/lib/python2.6/dist-packages/feedparser.py", line 659, in unknown_endtag 
     self.pop(prefix + suffix) 
    File "/usr/local/lib/python2.6/dist-packages/feedparser.py", line 868, in pop 
     mfresults = _parseMicroformats(output, self.baseuri, self.encoding) 
    File "/usr/local/lib/python2.6/dist-packages/feedparser.py", line 2412, in _parseMicroformats 
     p = _MicroformatsParser(htmlSource, baseURI, encoding) 
    File "/usr/local/lib/python2.6/dist-packages/feedparser.py", line 2016, in __init__ 
     self.document = BeautifulSoup.BeautifulSoup(data) 
    AttributeError: 'module' object has no attribute 'BeautifulSoup' 

Слуховой от вас,

+0

«import BeautifulSoup» работает в консоли python? –

ответ

3
AttributeError: 'module' object has no attribute 'BeautifulSoup' 

Похоже, что вам нужно установить BeautifulSoup:

sudo apt-get install python-beautifulsoup 

PS. Вы установили версию feedparse в/usr/local. Существует также пакет Ubuntu для feedparser: python-feedparser. Он может быть не таким новым, но его установка была бы использована во всех зависимостях для вас.

+0

Благодарим за ответ, – user702846

0

Howdy! Я не вижу этого в feedparser 5.0.1; я предполагаю, что BeautifulSoup установлен странно, или что код отправителя, который вы используете, каким-то образом был изменен. В частности, код синтаксического анализа микроформата не должен запускаться, если BeautifulSoup не установлен, поэтому чтобы достичь этой точки, а затем обнаружите, что в модуле нет класса BeautifulSoup, это ... странно.

Как было отмечено выше, что вы получаете, когда вы запустите интерпретатор Python и просто введите

import BeautifulSoup 
print BeautifulSoup.__file__ 
dir(BeautifulSoup) 
BeautifulSoup.BeautifulSoup 
0

поделюсь, как я исправила эту ошибку: я использую Pydev на Eclipse, а IDE и ошибка I было сделано во время установки Пидева. Я выбрал Auto Config для интерпретатора. Это привело к включению Python 2.7 в качестве интерпретатора и, следовательно, привело к ошибке.