1

我正在开发一个应用程序,我想从某个来源(例如 BBC)检索当天的热门新闻故事列表,并将这些内容解析为可用于我自己的标签数据的关键字。显然有很多 Web 服务和 API 存在——但你会建议采取什么好的路线。

我正在考虑的一件事是定期下载 BBC 新闻的 RSS 提要并使用 Yahoo 术语提取器解析内容。这对我来说似乎是一个很好的解决方案,但提取器一词仅用于非商业用途,我的应用程序是商业的。

YQL 看起来很有希望,但我不确定将数据压缩为关键字有多容易。

欢迎所有建议,包括新闻来源和关键字/标签提取,以及商业和非商业用途。

更新:

基于答案的建议,这里是用于从 BBC 上的英国顶级新闻商店中获取关键字的 YQL:

select content 
from search.termextract 
where context in (
    select title 
    from rss 
    where url='http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml' 
) 

它返回类似:

<?xml version="1.0" encoding="UTF-8"?>
<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:count="46" yahoo:created="2009-11-13T11:49:05Z" yahoo:lang="en-US" yahoo:updated="2009-11-13T11:49:05Z" yahoo:uri="http://query.yahooapis.com/v1/yql?q=select+content+from+search.termextract+where+context+in+%28select+title+from+rss+where+url%3D%27http%3A%2F%2Fnewsrss.bbc.co.uk%2Frss%2Fnewsonline_uk_edition%2Ffront_page%2Frss.xml%27+%29">
    <results>
        <Result xmlns="urn:yahoo:cate">new york</Result>
        <Result xmlns="urn:yahoo:cate">bolt gun</Result>
        <Result xmlns="urn:yahoo:cate">stalker</Result>
        <Result xmlns="urn:yahoo:cate">russia</Result>
        <Result xmlns="urn:yahoo:cate">moon</Result>
        <Result xmlns="urn:yahoo:cate">hijack</Result>
        <Result xmlns="urn:yahoo:cate">yacht</Result>
        <Result xmlns="urn:yahoo:cate">balloon</Result>
        <Result xmlns="urn:yahoo:cate">parents</Result>
        <Result xmlns="urn:yahoo:cate">bruce forsyth</Result>
        <Result xmlns="urn:yahoo:cate">flu</Result>

最终,由于术语提取服务的限制,我认为我不能在商业应用程序中使用它。

4

1 回答 1

1

你说 YQL 看起来很有前途,所以我相信你已经对此进行了调查。您可以同时使用两个 YQL 服务。 search.termextract将为您提供查询中的关键字search.news

select * from search.termextract where context in (select abstract from search.news where query="election")

您必须摆弄以使查询的 where 部分特定于最新消息。

这里开始:“术语提取服务限制为每个 IP 地址每天 5,000 次查询,并且仅限于非商业用途。请参阅有关速率限制的信息。”

于 2009-11-13T21:15:31.490 回答