diff --git a/frontend/src/saccubus/MainFrame_AboutBox.java b/frontend/src/saccubus/MainFrame_AboutBox.java index 281a6b4..c057e3a 100644 --- a/frontend/src/saccubus/MainFrame_AboutBox.java +++ b/frontend/src/saccubus/MainFrame_AboutBox.java @@ -52,8 +52,8 @@ public class MainFrame_AboutBox extends JDialog implements ActionListener { // String version = "ver1.22r(2008/04/27)"; - public static final String rev = "1.70.0.18"; - private static final String modefied = " (2024/04/27)"; + public static final String rev = "1.70.0.19"; + private static final String modefied = " (2024/08/06)"; String productHTML = "" + diff --git a/frontend/src/saccubus/net/NicoClient.java b/frontend/src/saccubus/net/NicoClient.java index 20da5fb..8b9e4c2 100644 --- a/frontend/src/saccubus/net/NicoClient.java +++ b/frontend/src/saccubus/net/NicoClient.java @@ -3221,13 +3221,10 @@ private String getDataApiJson(){ */ private String getDataApiData(String text, String encoding, String comment){ // 動画ページのJSONを取り出す - text = getXmlElement1(text, "body"); //body - if(text==null) - return null; - text = getXmlAttribute(text, "data-api-data"); - //div id="js-initial-watch-data" data-api-data="{ + //text = getXmlAttribute(text, "data-api-data"); + text = getXmlAttribute(text, "server-response"); //2024.8.5 if(text==null){ - log.println("error: not found data-api-data"); + log.println("error: not found server-response"); return null; } int start = text.indexOf(JSON_START2); @@ -3239,7 +3236,7 @@ private String getDataApiData(String text, String encoding, String comment){ int end = (text+json_end).indexOf(json_end, start); // end of JSON text = (text+json_end).substring(start, end); if(text==null || text.isEmpty()){ - log.println("error: not found dataApi JSON2"); + log.println("error: not found server-response JSON2"); return null; } text = text.replace(""", S_QUOTE2); @@ -3460,8 +3457,9 @@ public String getXmlElement2(String input, String key){ return null; } - private String getXmlAttribute(String input, String atribname){ - Pattern p = Pattern.compile("<[^>]*"+atribname+"=\"([^\"]+)\"[^>]*>",Pattern.DOTALL); + private String getXmlAttribute(String input, String key){ + Pattern p = Pattern.compile("\""+key+"\" content=\"([^\"]+)\"",Pattern.DOTALL); + log.print(p.toString()); Matcher m = p.matcher(input); if(m.find()) return m.group(1);