1

次のような、リテラル (エスケープされていない) 電子メール タグを含むページを読み込むのに問題があります。

<html>
    <head>
            <title>Testing</title>
    </head>
    <body>
            <p>Testing testing.</p>
            <p>This is an email address for <joe@somewhere.com></p>
    </body>
</html>

そのブロックにヒットすると、解析が失敗します。

ファイル "/tools/oss/packages/x86_64-rhel5/python/2.7.1/lib/python2.7/HTMLParser.py"、115 行目、エラー発生 HTMLParseError(message, self.getpos()) HTMLParseError: 不正な開始タグ、行 748、列 82

私が最初にこれに遭遇したとは信じられませんが、ヘルプや有用なドキュメントがすぐに見つかりません。明らかな何かが欠けていますか?

ありがとう、

-- ポール

4

2 に答える 2

0

いつでも - 質問を投稿すると、後で突然答えが見つかります。

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=516824に記載されているバグに遭遇したようです- 新しい BeautifulSoup に更新すると実際に問題が解決します。

于 2012-07-12T10:51:55.143 に答える
-1

これは BeautifulSoup でよくある問題です。正規表現を使用してタグを検出するため、不正な形式のタグは処理されません。

Python の lxml を試してください。BeautifulSoup に似ていることを考えると、それだけの価値があります。

http://lxml.de/elementsoup.html

PS: BeautifulSoup を更新することも役立つかもしれません。

于 2012-07-12T10:53:12.477 に答える