ошибка Python Feedparser установить - PullRequest
0 голосов
/ 10 февраля 2011

При попытке использовать "python feedparser" возникает куча ошибок; в то время как во время установки нет претензий. Я делаю что-то вроде этого:

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'

Слыша от тебя,

Ответы [ 3 ]

3 голосов
/ 10 февраля 2011
AttributeError: 'module' object has no attribute 'BeautifulSoup'

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

sudo apt-get install python-beautifulsoup

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

0 голосов
/ 11 декабря 2015

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

0 голосов
/ 24 февраля 2011

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

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