为什么我在尝试查找元素时会抛出 NullReferenceException?

Why am I being thrown a NullReferenceException when I try to find an element?

我目前正在开发一个 bo,它可以进入搜索栏,选择一个元素,然后获取它的 href link。我正在使用以下代码,但抛出了 NullReferenceExceptions。有谁知道为什么?

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

谢谢, 尼古拉斯

你应该把它放在 DocumentCompleted 事件下,并在它触发时访问你的句柄中的文档:

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

即使您调用了 Navigate 方法,您的导航仍未加载。这就是为什么 returns null.