Python
 Computer >> コンピューター >  >> プログラミング >> Python

html.parser —Pythonの単純なHTMLおよびXHTMLパーサー


このモジュールで定義されているHTMLParserクラスは、HTMLおよびXHMTLドキュメントを解析する機能を提供します。このクラスには、タグ、データ、コメント、その他のHTML要素を識別できるハンドラーメソッドが含まれています。

HTMLParserクラスを継承する新しいクラスを定義し、feed()メソッドを使用してHTMLテキストを送信する必要があります。

from html.parser import HTMLParser
class parser(HTMLParser):
pass
p = parser()
p.feed('<a href = "www.tutorialspoint.com"></a>')

次のメソッドをオーバーライドする必要があります

handle_starttag(tag, attrs):

HTMLタグは通常、開始タグと終了タグのペアになっています。たとえば、とです。このメソッドは、タグの開始を処理するために呼び出されます。

小文字に変換されたタグの名前。 attrs引数は、タグの<>括弧内にある属性を表します。

たとえば、タグ の場合、パーサーオブジェクトにフィードされます。

from html.parser import HTMLParser
class parser(HTMLParser):
def handle_starttag(self, tag, attrs):
print("Start tag:", tag)
for attr in attrs:
print(" attr:", attr)
p = parser()
p.feed('<a href = "www.tutorialspoint.com">')

出力

Start tag: a
attr: ('href', 'www.tutorialspoint.com')
handle_endtag(tag):

このメソッドは、要素の終了タグを処理するために呼び出されます。

def handle_endtag(self, tag):
print ("end tag",tag)
handle_data(data):

このメソッドは、タグ間の任意のデータを処理するために呼び出されます。例:

def handle_data(self, data):
print (data)
p = parser()
html = '''
<html>
   <body>
      <h1>Tutorialspoint</h1>
      <b>Python standard library</b>
      <p>HTML module</p>
   </body>
</html>'''
p.feed(html)

出力

Start tag: h1
Tutorialspoint
end tag h1
Start tag: b
Python standard library
end tag b
Start tag: p
HTML module
end tag p

HTMLParserクラスの他のメソッドは次のとおりです。

get_starttag_text()

最後に開いた開始タグのテキストを返します。

getpos()

現在の行番号とオフセットを返します。

handle_startendtag(tag、attrs)

handle_starttag()に似ていますが、パーサーがXHTMLスタイルの空のタグ(html.parser —Pythonの単純なHTMLおよびXHTMLパーサー )に遭遇したときに呼び出されます。

handle_comment(data)

このメソッドは、コメントが検出されたときに呼び出されます(例:<!-comment->)。


  1. HTML<dl>タグ

    HTMLのdl要素は、説明リストを定義するために使用されます。 HTML5では、は説明リストを定義するために使用されますが、HTML4ではは定義リストを定義します。 タグ-を実装する例を見てみましょう 例 <!DOCTYPE html> <html> <body> <h2>Sports</h2> <dl>    <dt>Football</dt>       <dd>It is played by 250 million players

  2. Pythonプログラムへの単純な関心

    この記事では、Python3.xでの単利の計算について学習します。またはそれ以前。 単純な関心 は、1日の利率に元本を掛け、支払いの間に経過した日数を掛けて計算されます。 数学的に 単利=(P x T x R)/ 100 どこで、 Pは元本です Tは時間であり Rはレートです たとえば、 P =1000の場合、R =1、T =2 次にSI=20.0 それでは、Pythonで単純な利息計算機を実装する方法を見てみましょう。 例 P = 1000 R = 1 T = 2 # simple interest SI = (P * R * T) / 100 print(&