如何使用SWT Broser将html页面代码转换为String?
Display display = new Display();
Shell shell = new Shell(display);
shell.setSize(100, 100);
Browser browser = new Browser(shell, SWT.NONE);
browser.setBounds(5, 75, 100, 100);
shell.open();
browser.setUrl("https://google.com");
String html = browser.getText(); //NOTHING!
while (!shell.isDisposed()) {
if (!display.readAndDispatch() && html == null) {
display.sleep();
}
}
display.dispose();
Syste.out.println(html); ////NOTHING!
那么,我怎么能拿html?最好的方法是,在html代码获取显示窗口后会关闭吗?
答案 0 :(得分:2)
您要搜索的方法是:Browser#getText()
。这是javadoc的重要部分:
返回一个HTML字符串,表示当前页面的内容。
所以这样就可以了:
String html = browser.getText();
System.out.println(html);
关于第二个问题:您可以通过致电Shell#close()
来关闭shell。这是Javadoc:
请求窗口管理器以与用户单击“关闭框”时关闭接收器相同的方式关闭接收器,或者执行指示应移除窗口的其他特定于平台的键或鼠标组合。