2015-07-05 43 views
0

我試圖點擊包含文本「下一步」的鏈接。 我用壁虎排版引擎嘗試這種代碼在C#:如何在C#中使用壁虎瀏覽器引擎點擊錨標記

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> 

這是不工作的。

回答

1

首先,爲什麼不簡單地導航到鏈接的值? 即browser.Navigate("http://website.com/to/150810/4/");

我不認爲它會根據您的頁面代碼示例做出任何區別,並且會更快更容易。

如果你需要點擊雖然... 這不是做到這一點的方式 - 畢竟你並不是真的創建一個新的Link元素。 因此,沿線的東西

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

感謝一羣老兄!順便說一下,我不使用導航的目的是因爲導航移除了引用者屬性。 – CodyMan

+0

@CodyMan - 確定 - 但是,您可以指定引用者。 geckowebbrowser的.Navigate()方法有一個接受引用字符串的重載。乾杯;) – Bartosz

+0

我知道,通過增加會話跳出率的方式 – CodyMan

相關問題