私はhtmlを解析するためにpython + beautifulsoupを使用しています。私の問題は、さまざまな量のテキスト項目があることです。この場合、たとえば、「テキスト 1」、「テキスト 2」、...「テキスト 4」を抽出したいとします。他の Web ページでは、「テキスト 1」または場合によっては 2 つしかない場合があります。したがって、変化します。「テキスト x」がタグに含まれていれば、私の生活は楽になります。しかし、そうではありません。next と previous (またはおそらく nextSibling と previousSibling) を使用してそれらにアクセスできますが、頭のてっぺんからそれらすべてを取得する方法がわかりません。アイデアは、(私が遭遇する最大数が4であると仮定して)「テキスト1」をファイルに書き込み、「テキスト4」までずっと進むことです。それがこの場合です。「テキスト 1」しかない場合は、「テキスト 1」をファイルに書き込み、そして、2-4の空白があります。私が何をすべきかについての提案はありますか?
<div id="DIVID" style="display: block; margin-left: 1em;">
<b>Header 1</b>
<br/>
Text 1
<br/>
Text 2
<br/>
Text 3
<br/>
Text 4
<br/>
<b>Header 2</b>
</div>
ところで、あまり関係のない質問があります。上記とまったく同じように、すべてがhtmlにリンクするさまざまな数のリンクを持つWebサイトがあるとします。これはこのアプリケーションではありませんが、craigslist を考えてみてください。中央のページには多数のリンクがあります。解析を行うには、これらの各ページにアクセスできる必要があります。これを行うための良いアプローチは何でしょうか?
ありがとう!
追加: 次の Web ページは次のようになります。
<div id="DIVID2" style="display: block; margin-left: 1em;">
<b>Header 1</b>
<br/>
Different Text 1
<br/>
Different Text 2
<br/>
<b>Header 2</b>
</div>
違いに注意してください。
DIVID は DIVID2 になりました。ページの他の解析に基づいて、DIVID の末尾を把握できます。これは問題ではありません。
テキストの項目が 4 つではなく 2 つしかありません。
現在のテキストは異なります。
主な類似点に注意してください。
- ヘッダー 1 とヘッダー 2 は同じです。これらは変わりません。