BeautifulSoupを使って要素を追加する
BeautifulSoupを使ってHTMLに要素を追加する機会があったのでサンプルを掲載します。BeautifulSoupでは要素をTagクラスとして扱うので、要素を追加する場合はTagクラスのインスタンスを生成して、親となる要素(Tagクラス)の「insert」メソッドで追加することができます。
また、要素にテキストを追加したい場合は「NavigableStringクラス」を使用すれば追加できるようです。
下記が簡単なサンプルです。
このプログラムを実行すると
と表示され、正常に要素が追加されているようです。
また、要素にテキストを追加したい場合は「NavigableStringクラス」を使用すれば追加できるようです。
下記が簡単なサンプルです。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import codecs
from BeautifulSoup import BeautifulSoup
from BeautifulSoup import NavigableString
from BeautifulSoup import Tag
sys.stdout = codecs.getwriter('cp932')(sys.stdout)
html = """
<div>
<a href="http://www.google.com/">Google</a>
<a href="http://www.yahoo.co.jp/">Yahoo! Japan</a>
</div>
"""
soup = BeautifulSoup(html)
tag = Tag(soup, "a")
tag["href"] = "http://www.r-stone.net/"
text = NavigableString("リバーストーン")
tag.insert(0, text)
soup.div.insert(0, tag)
print soup.prettify()
このプログラムを実行すると
<div>
<a href="http://www.r-stone.net/">
リバーストーン
</a>
<a href="http://www.google.com/">
Google
</a>
<a href="http://www.yahoo.co.jp/">
Yahoo! Japan
</a>
</div>
と表示され、正常に要素が追加されているようです。
ラベル: Python

0 件のコメント :
コメントを投稿
この投稿へのリンク :
リンクを作成
<< ホーム