Pythonのbeautifulメソッド new_string()?、new_tag()

PythonのBeautiful Soupライブラリには、要素を作成するためのnew_string()メソッドとnew_tag()メソッドがあります。これらのメソッドは、新しいテキスト要素やタグ要素を作成するために使用されます。

  1. new_string()メソッド:
    • new_string()メソッドは、新しいテキスト要素を作成します。
    • このメソッドはBeautiful Soupオブジェクトに対して呼び出され、テキストを引数として受け取ります。
    • 新しいテキスト要素は、Beautiful Soupオブジェクト内で後で使用できます。
python
from bs4 import BeautifulSoup

# Beautiful Soupオブジェクトを作成
soup = BeautifulSoup("<html><body><p>This is a paragraph.</p></body></html>", 'html.parser')

# 新しいテキスト要素を作成
new_text = soup.new_string("This is a new text.")

# 新しいテキスト要素を既存の要素に追加
paragraph = soup.p
paragraph.string.replace_with(new_text)

# 更新されたBeautiful Soupオブジェクトを表示
print(soup.prettify())
  1. new_tag()メソッド:
    • new_tag()メソッドは、新しいタグ要素を作成します。
    • このメソッドはBeautiful Soupオブジェクトに対して呼び出され、タグ名を引数として受け取ります。
    • 新しいタグ要素は、属性を追加したりテキストを設定したりして使用できます。
python
from bs4 import BeautifulSoup

# Beautiful Soupオブジェクトを作成
soup = BeautifulSoup("<html><body><p>This is a paragraph.</p></body></html>", 'html.parser')

# 新しい<div>要素を作成
new_div = soup.new_tag("div")

# 属性を追加
new_div['class'] = 'content'

# テキストを設定
new_div.string = "This is a new div."

# 新しい<div>要素を既存の要素に追加
body = soup.body
body.append(new_div)

# 更新されたBeautiful Soupオブジェクトを表示
print(soup.prettify())

上記のコード例では、new_string()メソッドとnew_tag()メソッドを使用して、新しいテキスト要素と新しいタグ要素を作成し、それらをBeautiful Soupオブジェクトに追加しています。これらのメソッドを使用することで、Beautiful Soupを使用してHTMLやXMLドキュメントを構築または編集する際に新しい要素を追加できます。