基本
インポート
import bs4
soupオブジェクト
作成したsoupオブジェクトを利用して色々編集していく。
import bs4 soup = bs4.BeautifulSoup('', 'html.parser')
タグ
作成
soup.new_tag('タグ名')によりタグを作成していく。
import bs4 soup = bs4.BeautifulSoup('', 'html.parser') #pタグの作成 p_tag = soup.new_tag('p') print(p_tag)
実行結果
<p></p>
タグ内への文字の追加
soup.stringに代入することでタグ内の文字列を指定できる。
import bs4 soup = bs4.BeautifulSoup('', 'html.parser') #pタグの作成 p_tag = soup.new_tag('p') #文字の記述 p_tag.string = 'Hello World!' print(p_tag)
実行結果
<p>Hello World!</p>
クラスの指定
soup['class'] = クラス名によりクラス名を指定できる。
import bs4 soup = bs4.BeautifulSoup('', 'html.parser') #pタグの作成 p_tag = soup.new_tag('p') #クラス指定 p_tag['class'] = 'test' print(p_tag)
実行結果
<p class="test"></p>
ファイル出力
soupオブジェクトへのタグ追加
基本的にはsoupにタグをまとめる⇒soupを出力とするのがよい。
そのため、soup.append(タグ)によりsoupにタグを追加する。
import bs4 soup = bs4.BeautifulSoup('', 'html.parser') #pタグの作成 p_tag = soup.new_tag('p') p_tag['class'] = 'test' #soupへ追加 soup.append(p_tag) print(soup)
実行結果
<p class="test"></p>
ファイル出力
with open関数あたりで出力する。
import bs4 soup = bs4.BeautifulSoup('', 'html.parser') #pタグの作成 p_tag = soup.new_tag('p') p_tag['class'] = 'test' #soupへ追加 soup.append(p_tag) with open('sample.html', mode='w') as f: f.write(str(soup))