ぽよメモ

レガシーシステム考古学専攻

textとstring

ついさっき投稿したこれBeautifulSoupとMechaizeでwebスクレイピングで最後抽出してきたhtmlの文章を加工整形する際、t.text.strip()しました。 抽出してきたhtmlはこんな感じ(見やすいように改行を加えている箇所があります)

<p class="info_message">
現在あなたの受講している科目についての休講情報はありません。
</p>
<p class="info_message">
現在あなた個人を特定した呼び出しはありません。
詳細については<a href="?c=student_call">「学生呼び出し」</a>一覧で確認してください。
</p>
<p class="info_message">
<span class="col_red">あなたに関係する授業連絡があります。
詳細は<a href="?c=lecture_information">「授業関連連絡」</a>一覧で確認してください。(情報掲載日:2015/4/14)</span>
</p>
<p class="info_message">
<span class="col_red">あなたへ送信されたメール情報があります。
詳細は<a href="?c=mail_list">「配信メール履歴」</a>一覧で確認してください。</span>
</p>
<p class="info_message">
現在あなたへの学生アンケート情報はありません。
</p>
<p class="info_message">
現在受付期間中のファイル提出情報はありません。
</p>

これを最初print(t.string)していました。

すると

現在あなたの受講している科目についての休講情報はありません。
None
None
None
現在あなたへの学生アンケート情報はありません。
現在受付期間中のファイル提出情報はありません。

このようにいくつかがNoneになってしまいます。
これが本当によくわからなくて、強い人に聞いてみたところ.textを使ってみてはどうかと言われました。これでようやく先の記事のように文字列だけを抽出出来ました。 textとstringの違いはよくわからないままですが、少なくともこの方法ではこれが最善手だと思いました。