标题为,我正在尝试构建一个小型应用程序,它将聚合来自不同博客的RSS。我试图测试并探索这个操作的feedparser,虽然我试图编写一个可以检测rss feed的代码。
大多数人只会输入www.mysite.com/blog,这不是RSS源的URL。如果我有办法检测RSS提要,我试图复制浏览器行为,它可以看到RSS URL。
任何想法?
答案 0 :(得分:1)
浏览器使用RSS feed auto-discovery和Atom feed auto-discovery查找给定网页上的Feed。
例如,django问题列表可通过Atom订阅源获取,该订阅源链接在关联页面的HTML标题中:
<link rel="alternate" type="application/atom+xml" title="Feed of questions tagged python" href="/feeds/tag/python" />
您需要解析给定页面中的<link rel="alternate">
标签才能发现这些标签; application/atom+xml
或application/rss+xml
类型的任何内容都适合。
答案 1 :(得分:1)
使用类似BeautifulSoup的内容来解析HTML文档并查找RSS源。以下是一个基本示例,不一定是效率最高的:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html_doc)
rss_links = soup.select('link[type="application/rss+xml"]')
for link in rss_links:
rss_url = link.get('href')
答案 2 :(得分:0)