我正试图从这个RSS源中删除所有标题:
http://www.quora.com/Python-programming-language-1/rss
这是我的相同代码:
import urllib2
import re
content = urllib2.urlopen('http://www.quora.com/Python-programming-language-1/rss').read()
allTitles = re.compile('<title>(.*)</title>')
list = re.findall(allTitles,content)
for e in range(0, 2):
print list[e]
然而,我没有得到一个标题列表作为输出,而是从rss源代码中得到了一堆代码。我做错了什么
应在表达式中使用非贪婪标记(?):
没有(.*)组中除最后一个
</title>
之外的所有文本?
如前所述,您的代码缺少用于regexp的贪婪说明符,可以使用它进行修复。但我强烈建议从正则表达式切换到更适合xml解析的工具,如lxml、BeautifulSoup或专门的rss解析模块,如feedparser
例如,查看如何使用lxml完成任务:
相关问题 更多 >
编程相关推荐