0

给定一个静态 HTML 页面,是否有自动生成 json 的方法?

对于包含大量静态 HTML 的大型网站,我想为 RSS 提要和搜索功能生成 json,并且正在寻找一种将 HTML 转换为 json 的方法。

我显然可以为每个页面和每种语言编写 json 模板,但这将是不可维护的。这将使 800 页的网站翻倍到 1600 页,这不是一个选择。

我想到的一种方法可能是编写一个机器人,它会遍历路由以索引页面并将数据保存到数据库中,这将为我提供我希望的所有选择,例如 solr、弹性搜索、思考狮身人面像ETC...

我可以使用 capybarra 来帮助我,方法是访问每个路径并提取文本以作为后台作业在 rake 任务中保存到数据库,但不确定这在生产环境中如何工作,似乎这样一个常见的要求可能有已经实现了,但对于我的生活,我找不到一个。

如果我能找到一种将 HTML 文本内容转换为 JSON 的方法,我会更开心(我想)

有任何想法吗?这已经完成了吗?有没有可能有帮助的宝石?或者是否有我没有想到的内置功能,也许是一种将 html 转换为哈希然后可以转换为 json 的方法?无论采用何种方法,它都需要自动化。我只是坚持最好的方法。

4

2 回答 2

1

基本上 html 看起来很像 xml,但具有很强的标签含义,所以你可以使用 xml 到 json 的转换,如果它最终得到相互嵌入的 html 标签树。所以你的问题变成了这个问题除了你可能会遇到单个标签的问题,而没有关闭一个。因此,您可能会得到所有这些并在每个之后放置一个右括号,然后再尝试从 xml 中获取它作为哈希。哦,早回答。顺便说一句,通常对于解析文本数据,您应该查看正则表达式。

于 2013-11-08T14:25:15.073 回答
0

我最终选择了一个 nokogiri 解决方案,并编写了一个解析器来满足我的需求

于 2014-03-24T04:59:05.823 回答