如何使用python或nodejs从HTML页面中提取javascript对象作为json?



https://yeastmine.yeastgenome.org/yeastmine/customQuery.do

上面的网页有这样的内容。据我了解,JSON不支持单引号,只允许双引号。因此,{} 中的内容不是有效的 JSON 对象。从生成的 HTML 页面中提取此对象并将其转换为 JSON 的最佳方法是什么?谢谢。

var helpMap = {'NcRNAGene': ...

这个提到了JSON.stringify.但是我不确定如何首先在python或nodejs中首先将helpMap作为JS对象。

将 JS 对象转换为 JSON 字符串

在该网站的控制台中,您可以编写javascript。在这种情况下,你是对的,JSON。Stringify 是你想要的,你通过将 javascript 对象helpMap作为参数传递到它来使用它,结果是 JSON 编码的字符串:

jsonString = JSON.stringify(helpMap)
console.log(jsonString)

您应该能够将该 json 字符串从控制台中复制出来(在 chrome 中,它的末尾会有一个"复制"按钮(。

假设网页已下载到 x.html,请运行以下命令。

grep '^ +var helpMap' < x.html | ./main.js

main.js具有以下代码。

fs=require('fs');
data = fs.readFileSync(process.stdin.fd);
eval(data.toString());
console.log(helpMap);

然后在必要时helpMap上使用JSON.stringify()

最新更新