javascript - 当网站 URL 输入搜索框(而不是提要 url)时,像 feedly 这样的服务如何从网站获取 rss 提要

标签 javascript jquery json rss

这可能是一个愚蠢的问题,不是一个完全与编程相关的问题,但在我尝试学习时请耐心等待。

如何FEEDLY只需在搜索框中输入网站 URL 即可从网站检索提要/新闻。

例如,我输入了http://www.inspirationfeed.com进入搜索字段,传递的 AJAX 调用/查询字符串是

http://cloud.feedly.com/v3/search/feeds?q=http%3A%2F%2Finspirationfeed.com%2F&n=20&ck=1381664838936

它返回一个 JSON 作为响应

{"results":[{"deliciousTags":["Design","inspiration","Diseño","Web Design","webdesign","graphic design"],"lastUpdated":1381561980000,"score":27531.265625,"website":"http://inspirationfeed.com","title":"inspirationfeed.com","subscribers":1772,"language":"en","velocity":16.3,"feedId":"feed/http://feeds.feedburner.com/inspirationfeed/BTLD","description":"be inspired!"},{"deliciousTags":["DESIGN","Inspiration"],"lastUpdated":1381474380000,"score":48.0,"website":"http://inspirationfeed.com","title":"inspirationfeed.com » Inspiration","subscribers":48,"language":"en","velocity":4.7,"feedId":"feed/http://inspirationfeed.com/category/inspiration/feed/","description":"be inspired!"},{"deliciousTags":["design"],"lastUpdated":1381479900000,"score":294.7439270019531,"website":"http://inspirationfeed.com","title":"inspirationfeed.com » Articles","subscribers":27,"language":"en","velocity":11.7,"feedId":"feed/http://inspirationfeed.com/category/articles/feed/","description":"be inspired!"},{"deliciousTags":["Photography"],"lastUpdated":1381129620000,"score":17.0,"website":"http://inspirationfeed.com","title":"inspirationfeed.com » Photography","subscribers":17,"language":"en","velocity":0.7,"feedId":"feed/http://inspirationfeed.com/category/photography/feed/","description":"be inspired!"},{"deliciousTags":["Little Bit of Everything-Amatuer"],"lastUpdated":1381396020000,"score":109.16442108154297,"website":"http://inspirationfeed.com","title":"inspirationfeed.com » Blogging","subscribers":10,"language":"en","velocity":0.5,"feedId":"feed/http://inspirationfeed.com/category/articles/blogging/feed/","description":"be inspired!"}]}

我的理解

1)根据关键字 deliciousTags ,feedly 生成 # 标签 2)根据关键的score,feedly以自上而下的顺序排列站点可用的不同提要/新闻URL

我不明白的地方

1)feedly 如何通过输入网站 URL 获取新闻提要/rss URL (EXAMPLE : "feedId":"feed/http://feeds.feedburner.com/inspirationfeed/BTLD")

2)这种东西需要写什么类型的web服务。是否需要服务器端脚本来深入搜索有问题的网站并检索提要 URLS?可以使用 JQuery/Javascript 在客户端本身获取提要 URL 吗?

再次感谢您花时间阅读问题。

最佳答案

在页面 html 的头部有一个带有 rss/atom feed 的站点的链接,如下所示:

<link rel="alternate" type="application/atom+xml" title="Feed for question &#39;how does a service like feedly obtain the rss feeds from a website when the website URL is entered into the search box(not the feed url&#39;" href="/feeds/question/19345075">

这是这个问题页面的来源

Feedly 或类似的服务在该页面(而非主机)的 html 中搜索并找到此链接标记(带有 rel,type):<link rel="alternate" type="application/atom+xml" title="awd" href="/feedUrl"><link rel="alternate" type="application/rss+xml" title="awd" href="/feedUrl"> (还有更多)

还有一些设置 feed url 的例程,

  • http://<url>/rss
  • http://<url>/feed
  • http://<url>/atom
  • http://<url>/<page>.xml

如果没有找到,那么那里什么也没有!

它可以在服务器端和客户端完成,但在服务器端有更多的好处,例如在解析页面 html 和测试例程之前进行数据库搜索。

默认情况下,Firefox 有一个获取页面提要的选项,以前版本的 chrome 有这样的功能,但它被谷歌(和谷歌方式)删除了。 (这是浏览器端,由用户控制和拥有,网站不能使用!但您可以找到他们实现该方法的方式)

关于javascript - 当网站 URL 输入搜索框(而不是提要 url)时,像 feedly 这样的服务如何从网站获取 rss 提要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19345075/

相关文章:

javascript - 有没有办法转义 HTML 字符串然后在 Angular 中应用 html 标记?

jquery - 如何检查函数的返回值是 true 还是 false

javascript - 在 jQuery 中获取 URL 并创建 ajax 后链接

javascript - Youtube API - 如何删除事件监听器?

javascript - 用js对html表进行子排序

javascript - 大负载上的 WSO2ESB js 脚本调解器错误

json - Angular:如何将 JSON 变量解析为 SCSS

json - 如何在 JSON 中转义双引号

javascript - JavaScript 中的简写 bool 逻辑

javascript - 如何根据特定选项更改文本颜色?