すべてのコンテンツタイプについてフィードパージャーに消毒を強制します
-
27-10-2019 - |
質問
プロジェクトには、使いたいです フィードパージャー. 。基本的に私はそれを機能させました。
ドキュメントで 消毒に関するセクション すべてのコンテンツタイプが消毒されているわけではないと説明されています。すべてのコンテンツタイプでフィードパージャーにこれを強制するにはどうすればよいですか?
解決
あなたが参照したFeedparser Docページは良いアドバイスを与えると思います:
*エントリ[i] .summary_detail.typeでコンテンツタイプを確認することをお勧めします。それがテキスト/プレーンの場合、それは消毒されていません(そして、コンテンツをレンダリングする前にHTMLエスケープを実行する必要があります)。
import cgi
import feedparser
d = feedparser.parse('http://rss.slashdot.org/Slashdot/slashdot')
# iterate through entries. If the type is not text/html, HTML clean it
for entry in d.entries:
if entry.summary_detail.type != 'text/html':
print cgi.escape(entry.summary)
else:
print entry.summary
もちろん、クリーンになったら、エントリを何をしたいのかに応じて、エントリを繰り返す方法は何十もあります。
所属していません StackOverflow