gpt4 book ai didi

java - 设置URL后如何从SWT中的浏览器获取HTML

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:14:26 26 4
gpt4 key购买 nike

我试过用

String html = browser.getText();

但是我收到了这个错误

Exception in thread "main" org.eclipse.swt.SWTException: Failed to change Variant type result = -2147352571 at org.eclipse.swt.ole.win32.OLE.error(Unknown Source) at org.eclipse.swt.ole.win32.Variant.getAutomation(Unknown Source) at org.eclipse.swt.browser.IE.getText(Unknown Source) at org.eclipse.swt.browser.Browser.getText(Unknown Source)

我已阅读此错误报告:https://bugs.eclipse.org/bugs/show_bug.cgi?id=433526

谁能帮我用其他方法从浏览器中获取 HTML?

最佳答案

您可以强制 SWT 使用另一个浏览器引擎(如果可用)来解决此错误。

例如

Browser browser = new Browser( parent, SWT.WEBKIT );

Browser browser = new Browser( parent, SWT.MOZILLA );

但是,问题的根源是您试图在页面完全加载之前获取页面源。如果没有您提到的错误,SWT 仍将返回一个空字符串。

修复方法是监听页面加载完成,然后才要求浏览器返回页面源。例如:

Browser browser = new Browser( shell, SWT.NONE );
browser.addProgressListener( new ProgressAdapter() {
@Override
public void completed( ProgressEvent event ) {
String text = browser.getText();
// here, text will contain the full page source
}
} );
browser.setUrl( "http://eclipse.org" );

关于java - 设置URL后如何从SWT中的浏览器获取HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38272812/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com