2009-06-20 17 views
0

サイトにログインする必要がある場合は、特定のページ(ローカルルータページなど)に移動し、ボタンをクリックして操作します(たとえば、接続)。ほとんど毎日しているので、小さなC#アプリケーションで自動化することを考えました。どうやってやるかわからない。何か指摘している?サイトへのログインを自動化してボタンをクリック

答えて

1

ワンクリックでコードC#が表示されるのはなぜですか?試してくださいAutoIt

ここにはstarter tutorialがあります。これにより、アプリケーションのデフォルトボタンをすばやく自動化するのに役立ちます。 AutoItのもうひとつのテクニックがあり、GUIを使って電話で誰かに話すことができるほとんどすべてのことができるようになります。

AutoItは、GUIテストで作業している場合や、多くの日常的なGUIアクティビティのスクリプト作成を夢見ている場合に便利なツールです。

+0

に従うよう サンプル・コードは、あなたのために役立ちますまた、あなたが同じことを行うことができますAutoHotkeyをされています願っています。 –

1

Fiddlerのようなツールを使用してHTTPリクエストのコンテンツをキャプチャします。この情報を使用すると、これらのHTTP要求を実行するアプリケーションを構築できます。

1

トレースHTTPが

  • ブラウザプラグイン(Firebugは、httpwatch、tamperdataなど)
  • ウェブデバッグプロキシ(などシオマネキ、チャールズ、)
  • パケットを使用して送信を要求スニファ(wiresharkの、など)

し、同じ要求を実行するためにSystem.Net名前空間(例えばWebClient)のクラスを使用します。

1

ブラウザで再生するためのスクリプトのようなマクロを記録することができるFireFoxプラグインであるSelenium IDEを使用することもできます。これはWebページの自動テスト用に設計されていますが、コンソールアプリケーションから実行できるC#でスクリプトを書き出すことができます。

C#アプリケーションとして実行する予定がある場合は、Selenium RCも参照する必要があります。

ハッピースクリプティング:)

0

私はマイクロソフト が提供するWebBrowserコントロールを使用してC#でアプリケーションを作成し、ウェブサイトをOPEするためにそれを使用し、それはhtmlのだ操作しようとしたと いくつかのテキストボックスに値を入れて試してみましたそして、それは私の作品のボタンを打つことを試みたことが、同様のAutoItと非常に似て

internal void LoginToSite() 
     { 
      WebBrowser.Navigate("some site login Page"); 
      _Processing = true; 
      var username = ConfigurationManager.AppSettings["username"]; 
      var password = ConfigurationManager.AppSettings["password"]; 
      while (_Processing) 
      { 
       Application.DoEvents(); 
       if (WebBrowser.ReadyState == WebBrowserReadyState.Complete || WebBrowser.ReadyState == WebBrowserReadyState.Interactive) 
       { 
        var htmlDocument = this.WebBrowser.Document; 
        if (htmlDocument != null) 
        { 
         foreach (HtmlElement tag in htmlDocument.GetElementsByTagName("input")) 
         { 
          switch (tag.Name) 
          { 
           case "username": 
            tag.InnerText = username; 
            break; 
           case "password": 
            tag.InnerText = password; 
            break; 
           case "cmdlogin": 
            tag.RaiseEvent("onclick"); 
            tag.InvokeMember("Click"); 
            break; 
          } 

         } 
        } 
        _Processing = false; 
       } 
      } 
     } 
関連する問題