如何通过href查找并单击链接/按钮? (GeckoFx浏览器)

时间:2014-09-23 14:36:24

标签: c# geckofx

过去我正在使用

       GeckoElementCollection elements = iframe.ContentDocument.GetElementsByName("name");
            foreach (var element in elements)
            {

                 if (element.GetAttribute("href") == "text")
                 {
                     MessageBox.Show(element.GetAttribute("class"));
                 }
              }

所以我按名称找到了元素然后我检查了href是否是我试图找到的元素。 现在我没有任何元素名称只有类(几个元素的类是相同的),唯一的是href。所以我需要通过href搜索元素并用它执行点击/输入事件。

我相信我需要使用GeckoNode

    GeckoNode node = iframe.ContentDocument.GetElementsByClassName("classname")[0].FirstChild;
             if (NodeType.Element == node.NodeType)
             {
                 MessageBox.Show(node.GetAttribute("hreff"));

             }

然而GetAttribute不适用于节点..任何想法?

1 个答案:

答案 0 :(得分:2)

我知道这个问题已经过时了,但今天我遇到了同样的问题并且我已经解决了。尝试这样的事情:

GeckoElementCollection fblikes = webBrowser.Document.GetElementsByTagName("a");
            foreach (GeckoHtmlElement item in fblikes)
            {
                string aux = item.GetAttribute("href");
                if (aux != null && aux != "" && aux.Equals("p.php?p=facebook"))
                {
                    item.Click();

                }
            }