如何以编程方式获取当天/小时/时刻的热门话题?

时间:2013-05-31 04:21:48

标签: web-services dynamic html-parsing screen-scraping news-feed

我想在我的页面加载时抓住当前的热门话题(可能是从叙利亚的内战到运动队或衣柜故障)。我希望它是一个简单的Web服务调用,如:

string hotTopic = getHotTopic();

..但这可能“不会发生。”

那么我可以实际期待什么呢?在头脑风暴中,我想到抓住纽约时报,赫芬顿邮报和其他几个网站的头条新闻,然后解析html中的h1标签,寻找多次出现的非常用词。我是在正确的轨道上吗?这个挑战有没有已知的解决方案?

1 个答案:

答案 0 :(得分:2)

人们总是可以从网站上下载RSS源并解析它们 - 但并不是每个网站都会为您提取的文章提供“查看计数”(这使得很难确定是否这是一个热门话题)。

我个人会去推特看热门话题 - 通常情况下,热门词汇或主题标签与新闻中的真实趋势一致。像超级碗或天气灾难这样的事件经常出现在那里。

要实现一种方法解决方案,您可能需要编写一个包装器。如果您使用的是Twitter API,则有一些pre-made libraries您可以使用该帮助实现此目的。包装器将类似于:

(完全编写代码)

string GetHotTopic() 
{

var svc = new TwitterSvcWrapper();
var topics = svc.GetTrending("united states");

return topic[0].text;
}

我知道这并不一定能让您解析几个页面并找到一些主题,但也许它会为您提供一种方法来发现可能趋势的内容。反对我自己的想法,Twitter也不总是最好的地方。愚蠢的物品可能是您可能不想使用的趋势,例如“#whatToSayAfter”......

我还想补充说,有些网站声称它违反了他们的使用条款以“刮”数据。例如,(不是你会使用它),但Xbox.com禁止你在ToS中抓取数据。 (1.12)

只是一些想法 - 祝你好运! 干杯!