0

重複の可能性:
BeautifulSoup Grab Visible Webpage Text
Python を使用した Web スクレイピング

私は、通常の HTML タグ、CSS および JS が中間にある非常に複雑な HTML ページであるとします。最悪のケースがすべて見られるかもしれません。

私が望むのは、上記のタグ/コードをすべて取り除き、「テキスト」を返すことだけです。

簡単な言葉で:

<html><body>Text</body></html>

これには、JS、CSS などが含まれる場合があります。

BeautifulSoup を使用しようとしていますが、コードから JS を削除していません..今、正規表現を使用することを考えています..しかし、方法がわかりません

編集1

これは、単純なブートストラップHTMLページでの私の試みです...

from bs4 import BeautifulSoup as bs
import requests

bs( requests.get(MY-URL).text ).get_text()

$ 戻りテキスト

html
Home
Le styles
body {
        padding-top: 10%;
        padding-left: 30%;
      }
HTML5 shim, for IE6-8 support of HTML5 elements
[if lt IE 9]>
      <script src="http://htm...html5.js"></script>
    <![endif]
Home | Under Construction
Sample Page 1
The app
might
face some ........
Firefox
. Ple..
/container
var _gaq = _gaq || [];

  _gaq.push(['_trackPageview']);

  (function() {
    var ga = do...............
  })();
4

1 に答える 1

1

この関数を使用してテキストからタグを削除するDjango:

def strip_tags(value):
    """Returns the given HTML with all tags stripped."""
    return re.sub(r'<[^>]*?>', '', force_unicode(value))

(force_unicode部分は必要ありません)

于 2013-01-15T18:52:03.637 に答える