2017-02-18 10 views
0

私は現在、検索バーに入り、要素を選択し、そのhrefリンクを取得するboに取り組んでいます。私は次のコードを使用しています。私はNullReferenceExceptionsを投げました。なぜ誰が知っていますか?要素を検索しようとするとNullReferenceExceptionがスローされるのはなぜですか?

webBrowser1.Navigate("https://us.octobersveryown.com/search?q=shirt"); 
    Thread.Sleep(1000); 
    String test = webBrowser1.Document.GetElementsByTagName("body")[0].GetAttribute("class"); 

おかげで、 ニコラス

+1

おそらく 'webBrowser1.Document.GetElementsByTagName(" body ")[0]'はnullです。プログラムをデバッグしてこれを確認してください。 – Christos

+0

@Christosこれは私が得ているものです: – Blar321

+0

BlarBot.exeで 'System.NullReferenceException'型の未処理の例外が発生しました 追加情報:オブジェクト参照がオブジェクトのインスタンスに設定されていません。 – Blar321

答えて

0

あなたはDocumentCompletedイベントの下にそれを入れて、それが発火するとき、あなたのハンドルでドキュメントにアクセスする必要があります

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
    { 
     string test = webBrowser1.Document.GetElementsByTagName("body")[0].GetAttribute("class"); 
    } 

あなたのナビゲーションは、まだあなたが呼んでいてもロードされていませんNavigateメソッド。それがnullを返す理由です。

関連する問題