Web ページの一部を分離しようとしていますが、残念ながら、それは私が引き出すことができるものには含まれていません。
私が得ることができる最も近いのは、Webページの本文全体を取得してから、テーブルを削除しようとすることです(これは私が望まない唯一の部分です)。
私が使用しているコード:
storyText = soup.body
toRemove = storyText.findAll('table')
for each in toRemove:
print each
現時点での問題は、toRemove 行がテーブルとそれらの間に含まれているテキストを返すことです。
だから私は得る:
<body>
<table>
table stuff
</table>
Text, not in tags </br> #This is what I want.
<table>
table stuff
</table
</body>
次のようにして問題を回避しました。
# Isolate body
findBody = soup.body
new = str(findBody)
# Section off the text from the tables before it.
sec = new.split('</table>')
# Select story area
newStory = sec[3]
# Section off the text from the tables after it.
newSec = newStory.split('<table')
# Select the story area, this the area that we want.
story = newSec[0]
これを行うためのはるかにクリーンな方法があるはずなので、私はまだ答えを探しています。