2011-07-21 15 views
1

.NET 3.5を使用してC#アプリケーションを構築しています。これは、Webサイトにログインする必要があります。いくつかのオプションを選択してから、Excelファイルへのリンクを含む別のページに進みます。私はこれらのステップをどのように進めることができるかを知りたい。Webサイトにログインしてデータを取得する

1)Webページを読み込みます(アプリケーション内のウィンドウに隠れているか表示されているか、非表示にしてください)。

2)ユーザー名とパスワードの組み合わせを入力し、Webサイトに送信します。

3)提供されているアカウントによって適切なオプションを選択してください(チェックボックスとリストをどのように調べるかを知っておく必要があります)。

4)次のページに進み、ファイルをリンクに読み込みます(おそらく、一時的な場所にダウンロードして読み込み、削除してください)。

UPDATE:

私は、次の処理を行い、私が仕事で使用するアプリケーションを持っている...

私はそれが私のセッションを認証するために、サーバにログインし、アプリケーションを実行したとき。アプリケーションには、クリックするとWebページ自体を使用してページ上の現在のアクティビティを表示/非表示するボタンがあります。

アプリケーションはページを読み込み、ユーザー名とパスワードを入力して送信します。次に、サーバー上のセッションを認証します。

私のアプリケーションはどういうわけか、ウェブページ(ホームページ)をロードしていくつかのオプションを選択します(私はそれらのオプションをページに応じて設定します)。そして次のページにリンクがあります(私ができることができるかどうかにかかわらず)Excelやアプリケーションでロードすると、ユーザの入力に基づいて結果を操作します。

答えて

2

ポストのシリーズとHttpWebRequestを使用してのGET HttpWebResponseはあなたの谷を得るでしょう。

これは簡単な作業ではありませんが、実際にはウェブページの「ロジック」を取得するためのツールが必要です。つまり、GETやPOSTをどのように整理しなければならないかを知るためのツールが必要です。この作業を行うには、Fiddlerのようなツールを使用します。

GETをする必要があるものとPOSTする必要があるものを取り除くと、プログラミングの部分に乗ることができます。

EDIT: ページをロードすることができる唯一の方法は、次の場合であるHTTP GET(HttpWebRequestの)、あなたはログインして選択/オプションを指定することができる唯一の方法があるトラフHTTPのPOST(HttpWebResponseのを)谷でありますサーバーは何らかの種類のWebインターフェイス(Webサービスまたは全く別の問題であるWCF)を使用しません。

実際に応答を受け取ると、必要なデータあなたのニーズに合っています。

エクセルに関しては、あなたのアプリケーションにExcelをロードしてそれに含める場合は、http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=5124

+0

問題の簡単な説明で質問を更新しました。 – sikas

+0

答えが更新されました。これがもう少しお役に立てば幸いです:) – TheBoyan

+0

本当にクリアされたものですが、 'HttpWebRequest'と' HttpWebResponse'の使い方の例を提供できますか? – sikas

1

これを正しく読んでいれば、Webサイトを操作するためにC#Winformsアプリが必要ですか?

もしそうなら、いくつかのHTTPリクエストを使い、あなたのアプリを使ってレスポンスをキャプチャして解析するだけです。 System.Web名前空間、つまりHttpWebRequestHttpWebResponseでこれを行うのに必要なものはすべてあります。

あなたはより具体的に(JSON/XML、Webサービスを考える)あなたが必要とするデータとインタフェースする別の方法を持っていた場合は、それが最善だろう、

をあなたの質問をしない限り、私は本当に多くの詳細に入ることはできません
+0

私は問題の簡単な説明で質問を更新しました。 – sikas

2

これは簡単な作業ではありません。これは、Webスクレーピングと呼ばれます。

理想的には、Webページにはマシン処理用の代替APIが必要です。 RPC/SOAP/RESTまたはその種類。

これを絶対に行う必要がある場合は、HttpWebRequest & HttpWebResponseはお友達です。あなた自身の上にあるHTML解析のために、最も適切なツール(正規表現、文字列パーサ、またはより堅牢なものが何であるかを選択します。

しかし、これは維持するために、痛みになります。

+0

問題の簡単な説明で質問を更新しました。 – sikas

+0

あなたが尋ねていることを正確に理解するのは難しいです。問題をより小さな具体的なステップに分割して、それらが詰まっているときに質問してみませんか? – Kugel

関連する問題