为了更好地学习python3.4,我决定创建一个“实用”的程序,它只需读取您提供的链接的RSS提要。我在用CNN的RSS源进行测试,得到了要打印的描述,但是描述中也包含了很多我不需要的“垃圾”,有没有一种快速删除不必要文本的方法?基本上,我想保留“以NBA创纪录的价格出售洛杉矶快船的交易可能会向前推进,加州遗嘱认证法官星期一裁定。”并删除其他所有内容。谢谢。在
完整的Rss标记:
<description>A deal to sell the Los Angeles Clippers for an NBA record price may move forward, a California probate judge ruled Monday.<div class="feedflare">
<a href="http://rss.cnn.com/~ff/rss/cnn_topstories?a=FMi4oVkdS58:sssPw82MBtA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/rss/cnn_topstories?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://rss.cnn.com/~ff/rss/cnn_topstories?a=FMi4oVkdS58:sssPw82MBtA:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/rss/cnn_topstories?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://rss.cnn.com/~ff/rss/cnn_topstories?a=FMi4oVkdS58:sssPw82MBtA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/rss/cnn_topstories?i=FMi4oVkdS58:sssPw82MBtA:V_sGLiPBpWU" border="0"></img></a> <a href="http://rss.cnn.com/~ff/rss/cnn_topstories?a=FMi4oVkdS58:sssPw82MBtA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/rss/cnn_topstories?d=qj6IDK7rITs" border="0"></img></a> <a href="http://rss.cnn.com/~ff/rss/cnn_topstories?a=FMi4oVkdS58:sssPw82MBtA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/rss/cnn_topstories?i=FMi4oVkdS58:sssPw82MBtA:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/rss/cnn_topstories/~4/FMi4oVkdS58" height="1" width="1"/></description>
“有没有快捷的方法,”你问?也许 吧。在
首先,通过复制你给我们的全部文本并通过这个在线HTML解码器运行,看看你真正得到了什么:
http://www.opinionatedgeek.com/DotNet/Tools/HTMLEncode/Decode.aspx
这会让你知道你在处理什么。您需要对文本进行解码,使其看起来像正确的HTML。然后您将看到,嵌套在
description
标记中,您在感兴趣的文本后面有一个div
标记和一个img
标记。如果您认为这是您从feed中得到的结果,那么安全的做法是在<div>
之前捕获所有内容并将其余内容丢弃。在看看这个关于解码HTML的答案:
https://stackoverflow.com/a/2087433/155167
一旦解码了HTML,就可以使用
find
对象的find
方法。在相关问题 更多 >
编程相关推荐