簡體   English   中英

使用C#控制Internet Explorer

[英]Control Internet Explorer with C#

有一個網頁有輸入文本字段。

我要啟動頁面

Process.Start("http://nameofdomain.com")

問題是如何在字段中輸入數據並提交表單?

更新 -

我不需要向用戶顯示/呈現任何頁面。

目的是允許用戶以最小的努力更改密碼。 我們當前的設置是

  1. 用戶導航到Intranet上的站點(http:// intranetsite / password)
  2. 要求用戶輸入其Windows用戶名(firstName.lastName)
  3. 要求用戶輸入他們當前的密碼(如果存在,則回答安全問題)
  4. 要求用戶單擊鏈接(在更改密碼或更改安全問題之間進行選擇)
  5. 最后一頁是一個確認頁面,告訴用戶哪些密碼已經成功更改。 他們在我們的網絡上有幾個帳戶。 每個帳戶都有不同的密碼規則。一個系統可能要求密碼不能再重復使用最近的90個密碼。 另一個系統要求密碼正好是8個字符。 我的應用程序檢查密碼規則是否正確。 我無法查看密碼歷史記錄。 因此,最終頁面是必要的,或者我必須解析HTML並指出錯誤。

您可以研究諸如Selenium之類的Web瀏覽器自動化工具,它們具有C#驅動程序來與瀏覽器進行交互並使之自動化。

最好的方法(到目前為止)是WatiN @ http://watin.org/ 我嘗試過Selenium並且永遠無法讓它順利運行(也許它已經變得更好了)。 WatiN的文檔面向自動化測試,但您可以不使用測試代碼/庫,並且它也支持FirefoxChrome 例如:

using WatiN.Core;
using WatiN.Core.Interfaces;
using WatiN.Core.Logging;
using WatiN.Core.DialogHandlers;

...

public void SearchForWatiNOnGoogle()
{
  using (var browser = new IE("http://www.google.com"))
  {
    browser.TextField(Find.ByName("q")).TypeText("WatiN");
    browser.Button(Find.ByName("btnG")).Click();
  }
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM