パープルハット

※当サイトではGoogleアドセンス広告を利用しています

Python beautifulsoup タグの取得・追加



タグの取得

ソースコード

import bs4

#soupオブジェクトを作成
soup = bs4.BeautifulSoup('<div><p class="test"></p></div>', 'html.parser')

#表示
print(soup)

#div内のpタグを取得
p_tag = soup.div.p

#p_tagの表示
print(p_tag)


実行結果

<div><p class="test"></p></div>
<p class="test"></p>





追加

末尾への追加(append)

appendで作成したタグの末尾に追加できる。

ソースコード

import bs4

soup = bs4.BeautifulSoup('', 'html.parser')

#divタグを作成
div_tag = soup.new_tag('div')

#divタグ内にp_tagを追加
div_tag.append(soup.new_tag('p'))

#divタグ内にspan_tagを追加
div_tag.append(soup.new_tag('span'))


print(div_tag)


実行結果

<div><p></p><span></span></div>



位置を指定して追加(insert)

insertでは何番目に追加するかを指定して追加をすることができます。

ソースコード

import bs4

#soupオブジェクトを作成
soup = bs4.BeautifulSoup('', 'html.parser')

#divタグ、pタグを追加
soup.append(soup.new_tag('div'))
soup.append(soup.new_tag('p'))

#表示
print(soup)

#先頭に対してbrを追加
soup.insert(0, soup.new_tag('span'))

#表示
print(soup)

#2番目にp(class="test")を追加
p_tag = soup.new_tag('p')
p_tag['class'] = 'test'
soup.insert(2, p_tag)

#表示
print(soup)


実行結果

実行結果

<div></div><p></p>
<span></span><div></div><p></p>
<span></span><div></div><p class="test"></p><p></p>