2

如何使用 SWT Broser 将 html 页面代码转换为字符串?

    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 代码后何时关闭?

4

1 回答 1

2

您正在寻找的方法是:Browser#getText()。这是javadoc的重要部分:

返回一个带有 HTML 的字符串,表示当前页面的内容。

所以这可以完成这项工作:

String html = browser.getText();

System.out.println(html);

对于您的第二个问题:您可以通过调用Shell#close(). 这是Javadoc:

请求窗口管理器以与用户单击“关闭框”时关闭接收器相同的方式关闭接收器,或执行指示应删除窗口的其他平台特定键或鼠标组合。

于 2012-12-29T21:03:34.347 回答