1

私は HTTPUNIT の学習を開始し、基本的な例を 1 つ見つけました。

この例では、このサイトにアクセスします。そして、HTTPUNITを含むリンクを検索します。そして、HTTPUNITにリンクの数を出力します。この例を自分のマシンで試してみましたが、うまくいきました。

        WebConversation wc = new WebConversation();
        WebRequest request = new GetMethodWebRequest( "http://www.meterware.com" );
        WebResponse response = wc.getResponse( request );
        WebLink httpunitLink = response.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "HttpUnit" );
        response = httpunitLink.click();
        System.out.println( "The HttpUnit main page contains " + response.getLinks().length + " links" );

今、私はコードを

  WebConversation wc = new WebConversation();
  WebRequest request = new GetMethodWebRequest( "http://www.google.com" );
  WebResponse response = wc.getResponse( request );
  WebLink httpunitLink = response.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "News" );
  response = httpunitLink.click();
  System.out.println( "The HttpUnit main page contains " + response.getLinks().length + " links" );

そして今、以下のエラーが発生しています。

ConversionError: The undefined value has no properties. (httpunit; line 4)

Google ニュースにアクセスしてリンク数を取得できないのはなぜですか?

前もって感謝します。

4

1 に答える 1

2

Google ホームページは JavaScript からレンダリングされます。

HTTPUNIT はJavaScript を部分的にサポートしています。負荷の高い JavaScript を使用してページをテストする必要がある場合は、Seleniumをご覧ください。

于 2012-03-31T16:22:59.793 に答える