Нужно получить html с сервера и проанализировать его с помощью xpath (xpath обязательно я не могу использовать что-то еще). Мой код:Parse html using xpath
TagNode tagNode = new HtmlCleaner().clean(html);
Document doc = new DomSerializer(new CleanerProperties()).createDOM(tagNode);
XPath xpathObject = XPathFactory.newInstance().newXPath();
NodeList nodes = (NodeList)xpathObject.evaluate(xpathString, html, XPathConstants.NODESET);
Это хорошо работает, но функция чистой() займет много времени (для страницы может занять> 30 с).
я нашел другое решение - используя Jsoup, так что мой новый код -
Document doc = Jsoup.parse(html);
W3CDom w3cDom = new W3CDom();
org.w3c.dom.Document w3cDoc = w3cDom.fromJsoup(doc);
XPath xpathObject = XPathFactory.newInstance().newXPath();
str = (String) xpathObject.evaluate(xpathString, w3cDoc, XPathConstants.STRING);
Теперь разобрать и преобразовать в org.w3c.dom.Document принять около 1s + оценка 0.4 сек ~ 1,5 секунды. Но это тоже очень медленно.
Как увеличить скорость обработки больше?
Вы пробовали https://github.com/code4craft/xsoup? Он утверждал, что он быстрее, чем HtmlCleaner. – user882813
Да, я пробовал это прямо, также jsoup использовать его – comalex3