【问题标题】:Sails.js static html rendererSails.js 静态 html 渲染器
【发布时间】:2015-06-15 16:00:29
【问题描述】:

我想制作一个应用程序,该应用程序将具有由 Web API 提供并由 knockoutjs 获取的页面内容。我应该如何处理我想被抓取的页面,当爬虫进入网站并正确集成到sails.js中时,是否有一个库可以制作静态html页面?

如果我可以将!# 留在网址之外,那就太好了,但这不是必需品

【问题讨论】:

  • 您是否正在尝试专门为普通用户无法访问的爬虫创建内容?那肯定会有被视为隐身的风险。一般来说,您永远不应该考虑“如果用户代理是爬虫......”

标签: node.js seo web-crawler sails.js


【解决方案1】:

这是一种解决方案: 大多数主要网站都使用此功能。

  • 写入静态 HTML 文件不是一个好主意
  • 没有有效的方法来检测爬虫

如果您的前端使用伪页面,那么您可以轻松地将这些 url 路由到一些实际页面并使用任何模板引擎。

如果没有一个技巧,那就是拥有一个 div 标签,其中包含与 res.render 一起发送的所有内容。 并且 javascript 代码将删除该内容。

您还可以包含元描述标签。

更多详情: 1) 添加您希望爬虫注意的所有页面的自定义路由。
2)使用jade或ejs等引擎创建另一个简单的视图模板。
3) 内部调用API函数,获取数据并渲染视图
res.view('simpleView', dataFromDb);
4) 该视图模板有一些 javascript 会隐藏该内容。
5) knockout.js 然后照常渲染内容。

【讨论】:

  • 赏金明天结束,我会奖励给你,但你能给我一个更详细的答案吗?我明白了,但我想确保我走在正确的道路上
猜你喜欢
  • 2020-06-27
  • 2014-02-14
  • 2017-12-16
  • 2015-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-06
  • 1970-01-01
相关资源
最近更新 更多