5

この URL からプロキシ リストを取得しようとしています。

無料のプロキシ リスト

これは素晴らしいことですが、ポート番号は動的な JavaScript コンテンツです。このページから JavaScript で生成されたコンテンツを取得するにはどうすればよいですか? 私は jsoup と djNativeSwing を持っていますが、これをバックグラウンド スレッドで実行したいと考えています。

JWebBrowser webBrowser = new JWebBrowser();
webBrowser.navigate("http://spys.ru/en/free-proxy-list/");
System.out.println(webBrowser.getHTMLContent());

このコードは Null の結果を返します。助けてください。

4

1 に答える 1

2

getHtmlContent() メソッドを呼び出したときに、Web ブラウザの読み込みが完了していません。代わりに次のようなものを使用してください。

JWebBrowser webBrowser = new JWebBrowser();
webBrowser.navigate("http://spys.ru/en/free-proxy-list/");
webBrowser.addWebBrowserListener(new WebBrowserListener(){
   public void loadingProgressChanged(WebBrowserEvent e){
       if(e.getWebBrowser().getLoadingProgress()==100)
            System.out.println(webBrowser.getHTMLContent());
   }
}
/* Note: I wrote this in the comment field without any testing,
   you probably have to make the webBrowser final. */

JavaDocsはあなたの友達です!

于 2012-08-23T18:02:14.260 に答える