現在、HTML 要素と属性を抽出するために BeautifulSoup を使用しています。
また、抽出された各要素のネストされたレベルも知りたいです。
例えば:
サンプル HTML:
<html>
<head>
<title>Element Attributes Test</title>
</head>
<body>
<div id="abc">
<ol id="def">
<li class="testItem"> <a href="http://testpage.html">
</li>
<li class="testItem"> <table id="testTable">
<tr>
<td>
<div id="testDiv">
</div>
</td>
</tr>
</table>
</li>
</ol>
</div>
</body>
</html>
特定の要素のパス情報をパス列の出力として取得したいと考えています。
----------------------------------
Element | Attribute | Path
----------------------------------
html | None | document
----------------------------------
head | None | html
----------------------------------
title | None | html.head
----------------------------------
body | None | html
----------------------------------
div | id="abc" | html.body
-----------------------------------
ol | id="def" | html.body.div
-----------------------------------
li | class=".."| html.body.div.ol
-----------------------------------
a | href=".." | html.body.div.ol.li
-----------------------------------
li | class=".."| html.body.div.ol
-----------------------------------
table | id="..." | html.body.div.old.li
-----------------------------------
tr | None | html.body.div.li.table
-----------------------------------
要素とそれに関連付けられた属性を抽出できますが、その特定の要素へのパスを取得する適切な方法を見つけることができません。
BeautifulSoup を使用して同じものを抽出するにはどうすればよいですか? 同じものを抽出するために使用できる他のライブラリはありますか?
前もって感謝します。