我在python中使用feedparser库从当地报纸上检索新闻(我的目的是在这个语料库上进行自然语言处理),并希望能够从RSS提要中检索许多过去的条目.
我不太熟悉RSS的技术问题,但我认为这应该是可能的(我可以看到,例如,当我移动滚动条时,Google Reader和Feedly可以"按需"执行此操作).
当我执行以下操作时:
import feedparser
url = 'http://feeds.folha.uol.com.br/folha/emcimadahora/rss091.xml'
feed = feedparser.parse(url)
for post in feed.entries:
title = post.title
Run Code Online (Sandbox Code Playgroud)
我只收到了十几个条目.我在考虑数百个.如果可能的话,也许是上个月的所有参赛作品.是否可以仅使用feedparser执行此操作?
我打算从rss中获取仅包含新闻项的链接,并使用BeautifulSoup解析整个页面以获取我想要的文本.另一种解决方案是跟踪页面中所有本地链接的爬虫,以获取大量新闻,但我想暂时避免这样做.
-
出现的一个解决方案是使用Google Reader RSS缓存:
但要访问它,我必须登录Google阅读器.谁知道我是如何从python那样做的?(我真的不知道关于网络的事情,我通常只讨论数值计算).
我对非官方的读者api进行了大量的研究,并通过其他问题进行了筛选,但没有一个完全符合我的要求.如果您知道文章ID已经有详细记录,如何分享文章,但我想知道如果您不知道ID(如何转换网址 - > id或如何直接使用网址共享,如何共享文章作为参数).
我想这是可能的,因为它的功能几乎模仿了他们所拥有的令人敬畏的"Note in Reader"书签的行为.
谢谢!
这是我的网址看起来如何:
https://www.google.com/reader/api/0/mark-all-as-read?s=http://www.campionatoseriea.net&ts=1345114937
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么它不起作用!我已成功登录.
*编辑*
https://www.google.com/reader/api/0/mark-all-as-read?s=feed/http://www.campionatoseriea.net/feed&ts=1346843394
Run Code Online (Sandbox Code Playgroud)
我也试过这个查询,但它不起作用!
有谁知道如何使用Google Reader的API添加备注?在查看他们的一些代码时,我注意到它可能与"/ reader/api/0/item/edit"URL有关,但我无法在任何地方找到此文档.
这个问题可能更适合软件商业论坛,但尽管我在那里发表了帖子,我仍然无法确定以下问题:我可以使用 Google API 来构建商业软件吗?如果不是的话, Byline背后的人怎么能对他们的应用程序收费呢?
更新:我对 Google 的 Picasa 和 Reader API 特别感兴趣
picasa google-reader commercial-application google-cloud-platform google-cloud-billing
我一直在为谷歌阅读器的客户工作.一切正常,但我无法编辑条目以添加标签,如"已加星标"和"已阅读".code.google.com/p/pyrfeed/wiki/GoogleReaderAPI和www.niallkennedy.com/blog/2005/12/google-reader-api.html上的说明似乎已过时.更奇怪的是,我一直在检查谷歌本身使用的POST数据,并试图完全复制它,但我仍然无法让它工作.我最接近的是 http://www.google.com/reader/api/0/edit-tag与POST数据a =/user/ - /state/com.google/starred&async = true&s = [进给] I = [项目] T = [令牌]
这似乎正是谷歌本身所做的,但我总是回到"无效的流名称".有什么建议?
(我之前问过这个问题,某种方式被认为更适用于超级用户,并且在它迁移之后,它被关闭,因为没有申请超级用户.让我先说清楚,然后,我问的是我在php中创建了一个由我编写的程序,但在Google Reader中存在一些问题.或者,如果Google Reader有一些特殊要求我作为程序员使用php,应该知道.我正在编程.)
我有两个RSS源站点.在每个站点中,我收集数据,然后将其传递给我编写的一个简单的格式化程序,它执行创建RSS格式的工作,因此每个站点基本上使用相同的代码来生成源.
我在Google阅读器中订阅了这两个版本.一个(scribs)工作正常,但另一个(amusing.org)没有.它显示了2009年11月7日的最新更新,并且不知何故最新更新(jan 22和之前的更新)在2009年10月31日之后堆积起来.因此,它从未显示Feed已更新.
两个Feed都通过Feed Validator进行验证,只是眼睛注视,所有的日期和格式都适合我,但我无法解决问题所在.
有效的提要:http://scribs.us/feed.php不提供
的提要:http://www.amusing.org/feed.php
谷歌阅读器API似乎期待今天认证的不同之处!
大约一个星期前,我下载了这个,一切正常,我尝试将其移植到java.对于我的代码,它完美地工作(在你的例子的帮助下)直到今天.我堆栈跟踪所有内容,我发现谷歌阅读器突然不接受只有SID作为cookie.当然,我也测试运行您的示例应用程序,但它也不能正常运行.
然后我去篡改谷歌阅读器的数据,我删除除了SID之外的每个cookie条目,它不起作用(好吧它给401,就像我的应用程序和你的样本); 我再次测试,我发现它现在需要另一个名为HSID的cookie条目,与SID(超过100个字长)相比,它大约是10-20个单词.任何人都知道我们可以从哪里获得额外的HSID?
PS我可以使用HTTPS进行身份验证,谷歌会向我返回三个令牌(SID,LSID,AUTH).但我无处猜测HSID是什么.
对于非官方的Google阅读器API,我可以获取Atom格式的Feed的所有项目.它们是否也以JSON格式提供?
Google阅读器不会显示我的Atom Feed http://feeds.feedburner.com/CartesianClosedComic的图标.
根据互联网上的各种建议,这是我尝试的内容:
<icon>指向png图标的元素.(我也在.ico那里尝试了一个图标.)IMO,这本身应该足够了,但由于某种原因它不是.<link rel="shortcut icon" type="image/x-icon" />指向.ico图标的元素.<link rel="alternate" type="text/html" />指向具有favicon的网页的元素.以上都没有帮助.
我还发现了一个假设,即在域的根路径下应该有一个favicon(类似的东西http://mydomain.com/favicon.ico),但这对我来说不是一个选择.
google-reader ×10
api ×2
atom-feed ×2
rss ×2
favicon ×1
feedparser ×1
json ×1
php ×1
picasa ×1
python ×1
rss-reader ×1
url ×1
web ×1