我想创建一个应用程序,它将通过web api传递页面内容,并由knockoutjs获取页面内容。我应该如何处理我想被爬网的页面,当爬网程序进入网站并正确地集成到sails.js中时,是否有一个生成静态html页面的库?
如果我能把!#放在url之外,那也太好了,但这不是必需的。

最佳答案

这里有一个解决方案:
大多数主要网站都使用这个。
写入静态html文件不是一个好主意
没有有效的方法检测爬虫
如果前端使用伪页面,则可以轻松地将这些url路由到某些实际页面,并使用任何模板引擎。
如果没有一个技巧是使用一个div标记,其中包含与res.render一起发送的所有内容。
javascript代码将删除这些内容。
也可以包含元描述标记。
更多细节:
1)添加要爬网程序注意的所有页面的自定义路由。
2)使用jade或ejs等引擎创建另一个简单的视图模板。
3)在内部调用API函数,获取数据并呈现视图
res.view('simpleView', dataFromDb);
4)该视图模板有一些javascript,可以隐藏该内容。
5)knockout.js然后照常呈现内容。

10-04 15:29