以下が HTML ドキュメントのサブセットであると仮定します...複数のテーブルが繰り返されていることに注意してください。ただし、<a name="1">
「2」、「3」、「4」など、テーブルごとに異なるテキストが含まれる場合があります。
<table align="center" width="550">
<tr>
<td valign="top" width="300"><b>Product:</b></img></td>
<td>
<a name="1"></a>1) Text Editor
<p>An application for the editing of text files.</p>
<br>
<b>Application Name: Notepad</b>
<br>
<b>Type: Writing</b>
<br><br></td>
</tr>
</table>
特定の「#」(この場合は 1) に等しい「a」タグを見つけて、「1) テキスト エディター」のテキストを取得できるようにしたいと考えています。
ドキュメント全体をbeautifulsoupedした場合、findAll("table")
すべてのテーブルを提供するようなものを使用できることはわかっていますが、どうすればその値に到達できるかわかりません。のようなことができるかもしれませんがfindAll("a")
、「名前」を (この場合は 1) と等しくなるように指定するにはどうすればよいでしょうか? それができたとしても、その「a」タグが空なので「1)テキストエディタ」にたどり着けず、「<b>Application Name: Notepad</b>
」の部分などにもたどり着けませんでした。
python/beautifulsoupの組み合わせによる最良の解決策は何ですか、または、テーブルの「1)テキストエディタ」と「アプリケーション名」と「タイプ」の部分を取得するためのより良い方法がある場合は、そこにあるという事実に基づいています<a name="1"></a>
それに先行する?サンプル構文は素晴らしいでしょう。