ホーム>source

BeautifulSoupを使用して属性を挿入するにはどうすればよいですか?

たとえば、 border="1" を挿入します。 <table> としてタグ属性。

編集:

私は自分の質問に答えました(特定のクラスのテーブルについても):

<前>ウィズウィズ inTopic = urllib2.urlopen("file:///C:/test/test.html") content = BeautifulSoup(inTopic) tlist = content.findAll('table', "myTableClass") for tbl in tlist: tbl['border'] = "1" print tbl.attrs
あなたの答え
  • 解決した方法 # 1

    どうですか:

    <前>ウィズウィズ

    inTopic = urllib2.urlopen('http://stackoverflow.com/questions/4951331/how-do-i-insert-an-attribute-using-beautifulsoup') content = BeautifulSoup.BeautifulSoup(inTopic) tlist = content.findAll('table') for tbl in tlist: tbl.attrs.append(('border', 1)) を試すことを忘れないでください 、それは高速でうまく解析されます。

  • 解決した方法 # 2

    lxml.html   例えば:

    <前>ウィズウィズ

    この場合:

    <前>ウィズウィズ

    戻ります

    <前>ウィズウィズ node.attrs['myNewAttr'] = 'my_new_value'

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ docker - 引用符付き文字列と日時オフセットの解析:GROKとLogstash