【问题标题】:how to click on anchor tag in c# using gecko browser engine如何使用壁虎浏览器引擎在c#中单击锚标记
【发布时间】:2015-07-05 22:43:46
【问题描述】:

我正在尝试单击包含文本“下一步”的链接。 我已经在 c# 中使用 gecko 网络浏览器引擎尝试了这段代码:

Gecko.DOM.GeckoLinkElement next = new Gecko.DOM.GeckoLinkElement(geckoWebBrowser1.Document.GetElementsByClassName("single-prev-next")[0].LastChild.DomObject);

next.Click();

这是网站的 Html :

<div class="single-prev-next" style="float:right">
<span class="picture-of">Photo 3 of 8 </span>
<div id="prevre">
</div>
<a href="http://website.com/to/150810/4/">Next</a>
</div>

这根本行不通。

【问题讨论】:

    标签: javascript c# gecko


    【解决方案1】:

    首先,为什么不简单地导航到链接的值? 即browser.Navigate("http://website.com/to/150810/4/");

    根据您的页面代码示例,我认为它不会产生任何影响,并且会更快更容易。

    如果您需要点击... 这不是这样做的方法 - 毕竟你实际上并没有创建一个新的 Link 元素。 因此,一些类似的东西

    GeckoAnchorElement link =   (GeckoAnchorElement)browser.Document.GetElementsByClassName("single-prev-next")[0].LastChild;
    link.Click();
    

    【讨论】:

    • 谢谢你!顺便说一句,我不使用 navigate 的目的是因为 navigate 删除了 referrer 属性。
    • @CodyMan - 好的 - 但是,您可以指定推荐人。 geckowebbrowser 的 .Navigate() 方法有一个接受引用字符串的重载。干杯;)
    • 我已经知道了,顺便说一下,这会增加会话的跳出率
    猜你喜欢
    • 1970-01-01
    • 2022-01-15
    • 2015-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多