Java:如何从脚本标记获取JSON值?

Java:如何从脚本标记获取JSON值?,java,json,Java,Json,我的目标是从网页的脚本标记中获取JSON值。棘手的部分是javaScript标记包含很多函数以及JSON数组。我能够通过jsoup以字符串格式转换整个脚本,但我不确定如何获取JSON变量的值 这是我的Java代码 Jsoup.connect("http://www.example.com/").timeout(1000).get(); Elements scriptElements = doc.getElementsByTag("script"); for (Element el

我的目标是从网页的脚本标记中获取JSON值。棘手的部分是javaScript标记包含很多函数以及JSON数组。我能够通过jsoup以字符串格式转换整个脚本,但我不确定如何获取JSON变量的值

这是我的Java代码

Jsoup.connect("http://www.example.com/").timeout(1000).get();
    Elements scriptElements = doc.getElementsByTag("script");
    for (Element element :scriptElements ){                
        for (DataNode node : element.dataNodes()) {
          System.out.println(node.getWholeData());
          }
    }`
脚本标记

x.y=x.y | |{};如果(x.y.z的类型==='hello'){
x、 y={name:'myName'| |''''',id:'123',a:function(app,eve,json),1);},b:function()…}


这里,我想得到名称和ID

以及使用子串的值,您也可以考虑用像

这样的工具来解析JavaScript(JavaScript不是JSON)(这不是JSON)。如果您知道代码的结构总是这样,那么您可以使用简单的字符串函数来查找和提取该值。如何获取上述变量的值?请使用
indexOf()
substring()
,这两种方法在这里都有说明。。。谢谢@Archer和user2864740