有没有一种方法可以将必应和谷歌新闻搜索转换成RSS格式?

7
有没有办法将Google和Bing新闻搜索作为RSS获取?
如果可能的话,我希望最近的结果排在前面(按时间排序)。
如果可能的话,显示100个结果。
我找到了这个Google的方法,但它只显示5个左右的项目,不是很好。

https://news.google.com/news/feeds?output=rss&q=politics

我只想搜索他们的新闻分类并获取RSS结果。

你找到如何加载100个结果了吗? - Mounir Elfassi
@chovy:真遗憾 :-| 只有10个结果并不是很好。 - mmx73
我转而使用爬取数据的方式。 - chovy
6个回答

8
您说得对,Google不再公开显示新闻搜索的RSS源。但是仍然存在基本的URL格式可以继续使用。
如果我的搜索主题是“教育”,我的搜索URL应该如下:
https://news.google.com/news/section?cf=all&ned=us&q=education

替换:

  • ned的值(可能代表‘新闻版本’)即us,替换成与您相关的国家代码。例如: uk(英国不是gb),in(印度),等等。

  • q的值(可能代表‘搜索查询’)即education替换成您的搜索词。使用加号(+)将多个单词组合在一起,例如: education+policy(如果您的搜索是“教育政策”)。

现在,您的浏览器中的RSS订阅按钮应该已经变为活动状态,因为页面上有可用的RSS源。它显示了10条最新的新闻项目,而不是5条。 RSS源URL应如下所示:

https://news.google.com/news/feeds?cf=all&ned=us&hl=en&q=education&output=rss

结论:RSS订阅源不适用于实际搜索,即在Google搜索框中输入关键词。您需要像这样进行操作。
(注:感谢问题本身提供的提示,否则我不会想到这一点。)

3
定制的RSS订阅源格式如下:
https://news.google.com/news/feeds?q={yourquery}&output=rss.  

例如,https://news.google.com/news/feeds?q=developer&output=rss 返回有关开发人员的新闻。

3
尝试添加:

&output=rss
https://news.google.com/news/section?cf=all&ned=us&q=education**&output=rss**

这看起来不错,但值得进一步解释。 - Iguananaut
这对我有用。有没有办法在此链接中指定“按日期排序”?谢谢。 - AlexVPerl
@AlexVPerl,请在您的URL中添加此参数:as_qdr=h。请查看此参考链接以获取更多信息,并查看我的回答。 - Mauricio Arias Olave

2
你最好的选择是类似于Google Alerts feeds这样的东西。你可以输入一个查询,选择其中的数据类型,并通过RSS获取它。由于它们支持PubSubHubbub,因此你也将获得实时结果。
如果你想要另一个数据集,请随意查看Superfeedr's track feeds,它将帮助你在任何RSS feed中匹配关键字时实时获得通知。

我不知道搜索的内容提前是什么。 - chovy

0

我认为谷歌在过去几周内禁用了RSS搜索输出,而我没有找到替代方案。XML输出需要谷歌付费账户。现在我必须从HTML中抓取我想要的内容。


哦,我现在明白了。最初的问题是关于新闻“信息源”,而我的问题则是从谷歌新闻“搜索”中获取RSS结果。 - Bruce Momjian
2
我正在获取RSS格式的新闻搜索结果。https://news.google.com/news/feeds?output=rss&q=whatever - chovy
1
哇,这非常有帮助。我现在知道http://news.google.com/news/*feeds*支持RSS输出,而http://www.google.com/*search*则停止了对RSS的支持。是啊,不再需要HTML抓取了! - Bruce Momjian

-1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接