- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:RSSからblog(ブログ)の本文を抽出 特定のブログのRSSにて…)
RSSからブログの本文を抽出する方法と問題点
このQ&Aのポイント
- 以前、RSSからブログの本文を抽出する方法について質問をしましたが、特定のブログのRSSでは問題が発生しました。
- リンクやタイトルは取得できるが、本文が記述されている要素のデータを取得できず、空白となってしまいます。
- 他のブログのRSSでは成功したので、特定のブログの仕様に問題がある可能性があるかもしれません。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>何か問題があるのでしょうか? 何が問題で片方で取れて片方で取れないのか ちょっとよくはわからないのですが、 とりあえず NodeList contentList = element.getElementsByTagName("content:encoded"); Element contentElement = (Element)contentList.item(0); String content = contentElement.getTextContent(); のようにgetTextContentを使ってみるとうまくいきました。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.2
>何も取得できずに、空白となってしまいます。 の原因は、 ライブドアなどが <content:encoded><![CDATA[ になっているのに対し、うまくいかない方は <content:encoded> <![CDATA[… のように別の行になっていることが原因ですね。 改行が1つ入っているためにCDATAセクションの前にテキストノードが1つできていて、 content:encodedの最初のノードの内容を取り出すと空行しかないので値が取れないということだと思います。 対処としては#1でいいと思います。
質問者
お礼
分かりやすい説明ありがとうございます。 よく理解することができました。
お礼
再びありがとうございます。 上記の方法で取得することができました。