我想写一个Rails应用程序,它能够捕获像Evernote限幅器那样的网页。如果您不熟悉,可以在浏览器中单击工具栏上的按钮,它会捕获相当准确的网页布局副本。例如,转到http://www.evernote.com/pub/jssmith072/shared并点击该页面上的单个备注,您就可以看到我抓取的网页了。有几个原因我不知道从哪里开始:
答案 0 :(得分:0)
就个人而言,我倾向于根本不将它存储在数据库中,而是产生一个后台作业来拉下网站,解析它并用你的可读性端口过滤它然后将它保存到某个地方的文件系统(公共或非公共,根据您的需要,您可以使用唯一标识它的目录方案轻松编写服务控制器的资产以公开非公共静态内容。
这样你就不需要做任何可怕的,复杂的事情,只需让服务器做他们擅长的事情,而不是每次都要写一些自定义的东西来从数据库中提取潜在的大量数据页面已被查看。
对于类似的东西,你需要的只是一个带有id,url,某种标志的简单数据库条目,表明它已经成功下载(或者它最后一次失败,以后可以再次尝试),路径在文件系统上,它应该/将被存储在文本列中,并且可能是一个文本列,其中包含页面文本的转储以供搜索。