Я сохранил HTML-код веб-страницы в базе данных.Можно ли загрузить HtmlPage из строки?
Я хочу воспользоваться способностью HtmlUnit находить/ссылаться на элементы DOM.
Можно ли загрузить объект HtmlPage из строки (через столбец базы данных)?
Я сохранил HTML-код веб-страницы в базе данных.Можно ли загрузить HtmlPage из строки?
Я хочу воспользоваться способностью HtmlUnit находить/ссылаться на элементы DOM.
Можно ли загрузить объект HtmlPage из строки (через столбец базы данных)?
StringWebResponse может помочь.
Edit: пример:
URL url = new URL("http://www.example.com");
StringWebResponse response = new StringWebResponse("<html><head><title>Test</title></head><body></body></html>", url);
HtmlPage page = HTMLParser.parseHtml(response, new TopLevelWindow("top", new WebClient()));
System.out.println(page.getTitleText());
uhhmm хорошо да.
Вам просто нужно его обслуживать (если вы используете java, вы можете использовать Tomcat для этого) и укажите свой тест на обслуживаемую страницу.
Я предполагаю, что вы используете HtmlParser.parseHtml
создать HtmlPage
объект и просто нужно WebResponse
пройти к ней?
Если да, StringWebResponse будет обертывать вашу строку, чтобы вы могли передать ее непосредственно на parseHtml
.
Я не могу найти HtmlParser в HtmlUnit, вы имеете в виду другую lib? – mrblah
http://htmlunit.sourceforge.net/apidocs/com/gargoylesoftware/htmlunit/html/HTMLParser.html#parseHtml%28com.gargoylesoftware.htmlunit.WebResponse,%20com.gargoylesoftware.htmlunit.WebWindow%29 –
Проблема в том, что TopLevelWindow конструктор защищен – lisak
только для интереса: почему вы сохраняете полные html-страницы как строки в базе данных? почему бы просто не хранить как простой файл в файловой системе? –