• ベストアンサー

Webページとのやりとり

お世話になります。りょと言います。 1.IDとパスワードを自動的にWebに入力 2.Webページに表示されている内容(銀行残高など)をプログラムに取り込んで処理 などをしたいと考えています。 例えば、Webページにログインする時には、手動でIDと パスワードを入力し、ログインボタン等を押しますが、 それをプログラムで実行するには、どのような技術を 用いれば簡単に実現できるのでしょうか。 色々な方法があると思うのですが、参考になる書籍を 買おうにも、どのような本を買えば良いかわからず、 一般的に上記のようなことをする際には、どのような 技術を使うものなのか、質問させて下さい。 (簡単にできるほど嬉しいです) VC++6.0か、C++Builder6辺りでの開発を考えています。 こんな技術を勉強すれば、簡単にできるよというのがあれば、教えて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • sire
  • ベストアンサー率62% (22/35)
回答No.2

C++BuilderならVCLにTWebBrowserというものがありますので、VCLリファレンスで見てみてください。 VC6では良くわからないのですが、 VBでもWebBrowserコントロールがありますので、 "WebBrowserコントロール"をキーに検索サイトで検索してみてください。お望みのものが見つかると思います。 具体的な方法ですが、まず、 ログインページにWebBrowserコントロールから行きます。 Navigate="http:wwwXX/login.html"見たいな感じで。 そして、htmlがダウンロードできると WebBrowserコントロールのDownloadCompleteイベントが起こるのでそれをキャッチします。 そして、 WebBrowserコントロールのDocumentプロパティの中身をみて、ここからは、そのlogin.htmlに書かれているソースに依存するのですが、 <form ....> <input type="text" name="id" .../> <input type="text" name="password" .../> <input type="submit" name="ok" value="ok" .../> 見たいに書いてあったら、 WebBrowser.Document.All.id=プログラムからの値 WebBrowser.Document.All.password=プログラムからの値 WebBrowser.Document.All.ok.Click こんな感じでログインできます。 そのあとに表示される残高などのとり方も htmlを解析してやってみてください。 (ちょっと適当に書いたので細かいところで違うかもしれません)

hidebun
質問者

お礼

ご回答ありがとうございます。 私の持っているC++Builder6にTWebBrowserがなく、 代わりにTCppWebBrowserというのを見つけました。 Navigate関数をコールすると、ページが表示され、 DownloadComplete()がコールバックされるところまで を確認しました。 Documentプロパティというのは、よくわかりませんが、 とにかくまずHTMLソースを見てみようと格闘しています。 しかし、C++Builderの情報はなかなか見つけるのが難しいですね(下手なだけ?)。 Delphiの情報は結構ひっかかるのですが、互換性はあるのかもと思いながらも よくわからず、スルーしています。 勉強がてら、VC++のWebBrowserも調べてみようと思います。

その他の回答 (1)

回答No.1

まずTCP/IP関係の本でHTTPプロトコルについて勉強しましょう。 これは本屋で立ち読みでもいいし、ネット上で勉強してもいいです。 次にVC、C++Builderでという事はWindowsで動くソフトを作りたんでしょうから、ソケット通信に関する本を立ち読みして自分のやりたい事が載ってる本を買ってサンプルソースをいじれば大体出来るんじゃないでしょうか。 ぐぐって最初に出てきたページですが、参考URLも一度目を通してみるといいかもしれません。

参考URL:
http://x68000.q-e-d.net/~68user/net/
hidebun
質問者

お礼

ご回答ありがとうございます。 最も原始的な部分を学ぶのが基本とわかっているのですが、 ソケットプログラムまで行くと、かなり細かな知識が必要ですね。 サンデープログラミングなので、もう少し抽象度の高いI/F(やコンポーネント)が あれば便利と考えています。 いずれにしろ、やがて勉強する必要があると考えておりますので、 これを契機に勉強したいと思います。ありがとうございます。

関連するQ&A

  • perlかphpでwebページの操作

    perlかphpでwebページの操作をするにはどうすればいいのでしょうか? webページの操作とは、 ユーザID/パスワードを入力してログイン、ページを進んで行き、値を入れて実行ボタンを押す、 みたいなことです。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • DelphiでWebを使ったデータのやり取り

    私は、ソフトウェア開発歴20年を超える技術者ですが、Webを利用するプログラミング経験がありません。 ずっと、パッケージ関連の開発をしていたので、閉じた世界での開発は慣れていますが、外部とのやり取り経験がないので、どなたか教えてください。 開発言語はDelphi7です。 内容は、クライアントとホストのデータのやり取りです。 クライアントから入力されたログインIDとパスワードをホストへ送信して、OKなら順次やり取りを行なうものですが、最初のやり取りの方法がわかりません。 仕様書では、ホスト側の http://000.000.00.000/login.php(仮) に対して、ログインIDと、ログインID+パスワードをMD5暗号化したものを送って欲しいとありますが、実際のコーディングはどうなるのでしょうか? login_id=XXXXXX md5=MD5(login_id=XXXXXX&login_Pass=XXXX) また、ホストからの受け取るデータも、MD5暗号化されたものと、されないものが送られるので、暗号化されていないものを端末側でMD5暗号化して、暗号化されて送られたものと同じなら、正常に受信されたと判断して次の処理を行なうことになっています。 result=n(n=1:OK,0:NG) md5=MD5(n) 質問の書き方も的を得ていないかもしれませんが、実際のコーディング例で教えていただければ幸いです。 よろしくお願いします。

  • ログインページ作成について

    自社のサイトに会員専用ページとして、会員用のID、パスワードを発行して、ID、パスワードを入力後会員専用ページに移動するようにしたいのですが、これを実現するためのプログラム等で初心者でも簡単に作成できるものをご存知の方がいらっしゃいましたら教えていただけませんでしょうか。

  • webアプリケーション開発の考え方

    卒業課題としてデータベースを利用したwebアプリケーション開発を始めたのですが、考え方というか開発手順がよく分かりません。 IDとパスワードを入力してログインし、従業員一覧から各ページに遷移していくというものです。私はこの一覧の制作を担当していますが、ログイン処理をしてリクエストセッションにデータを保存して…というところまではいいのですがそれ以外に必要な処理が分かりません。 MySQL1.5+eclipse3.1です。 漠然としていますが、ご教授いただけますようお願いします。参考になるサイトでも結構ですのでお願いします。

    • ベストアンサー
    • Java
  • ログイン処理を自動で行い、目的のWEBページの内容を取得したい

    ログイン処理を自動で行い、目的のWEBページの内容を取得したい http://dobon.net/vb/dotnet/internet/webrequest.html 上記のサイトを参考にWEBページの取得には成功したのですが、 IDやパスワードを入力する必要のあるページはどのようにしたらよいでしょうか?

  • ページオープン時にテキストボックスをアクティブにするには?

    Webアプリケーションを作っていて、困ったことに遭遇しました。 ログインするページには、  「ユーザID入力のテキストボックス」  「パスワード入力のテキストボックス」  「ログインのボタン」 の3つの部品が並んでいるのですが、 ページ表示時には、どれにもフォーカスが当たっていません。 ユーザID入力のテキストボックスにフォーカスを当てたいのですが、可能でしょうか?

    • ベストアンサー
    • HTML
  • Cookieによるもの?又、Cookieは使わないほうがいいのか?

    質問があるのですが、よろしくお願いします。 ウェブページで、時たま<input type="text">のような、文字を入力するフォームがありますが、例えばそこに、そのウェブページにログインするためのIDとパスワードを入力するような場合、入力フォームにカーソルを持ってきてダブルクリックすると、自分が今まで使ってきたIDが縦に複数表示され、その中から任意のIDを選んでクリックすると、パスワードを入力するフォームに、選んだIDと対になっているパスワードが自動的に表示されるようなことがありますが、この機能はCookieによるものなのでしょうか?それとも何か他のもの、OSやブラウザの機能によるものなのでしょうか??もしCookieによるものなのであれば、どのようなプログラムでそのように動いているのでしょうか? また、yahooのフリーメールサービスのように、IDとパスワードを手動で入力しなければいけないサイトもありますが、やはりCookieを使ってIDとパスワードを記録しておくことは、セキュリティ的に危険ということなのでしょうか?? どなたか詳しい方いらっしゃいましたらご教授どうぞよろしくお願いします。

  • WebサーバとWebアプリケーション。セッションID、ユーザーID、パスワードを管理するのはどっち?

    セッションIDを習ったとき、 私の記憶ではセッションIDを管理するのはWebサーバと習いました。 普通、このOKWaveのようにログインを要するようなWebページは ログイン時に渡されたユーザーIDとパスワードを セッションIDに紐付ける形でサーバ側で管理することによって、 このセッションIDを通して、同一ユーザーと見なすということだったと思います。 しかし、ここでひとつ疑問が出ました。 ログイン時に、「自分は誰か、正しいユーザーか」ということを通信先に教えるために ユーザーIDとパスワードを入れますよね? でもここでユーザーIDとパスワードがほしいのはWebサーバではなく、 ユーザー情報を持っているWebアプリケーションではないのか?と考えました。 しかし、私はセッションIDはWebサーバが管理すると習ったように記憶しています。 ということは、 ・セッションIDはWebサーバが管理する ・ユーザーIDとパスワードはWebアプリケーションが管理する ということでいいのでしょうか? つまり、セッションIDとユーザーIDの対応表はWebアプリケーション側で実装し、 クライアントのリクエストから呼び出されるWebアプリケーションのプログラムは 「この呼び出した相手のセッションIDを教えてください」と Webサーバに聞くようなプログラムにしなければならないという認識で合っているのでしょうか? よく分かってないので、聞きたいことが非常に伝わりにくいかと思いますが、 よろしくお願いします。 長い上、お粗末な文章を最後まで読んでいただきありがとうございました

  • IDとパスワードが必要なサイトへ自動ログインさせるには。

    あるサイトへアクセスし、ページ情報を取得。 IDとパスワードを入力しログインボタンを押す。 ページ情報を取得し様々なリンクを巡り情報を収集する。 このようなプログラムを作りたいと考えています。 マクロのような、IEを立ち上げIDとパスワードを直接入力してログインボタンを押す。というような動作ではなく、IEを立ち上げずにバックグラウンドで瞬時に、確実に動作するようなモノを求めています。 一番分からないのは、どのようにしてIDとパスワード情報を送信しログインするのか?という点です。 より簡単に上記内容を実現可能な方法などもありましたら教えて欲しいです。Java言語以外でも構いません。 宜しくお願いします。

  • Web ページ間の移動時

    ブラウザで Web ページを閲覧していると、或る Web ページから別のページに移動する際に、パッと表示が切り替わるのではなくゆっくりと或る方向から反対側へ(例えば左上から右下へ)紙をめくるような形で次のページが表示されたり、前のページが粉粒のように消えて徐々に次のページが表示されるようになるサイトが存在しますが、どういう仕組みで実現させているのでしょうか。HTMLなのかJavaScriptなのかそれ以外なのかどうもよくわかりません。こういうページはIBM Homepage Builderのような一般ユーザ向けソフトを使って作成された Web ページに多いような気がします(DreamWeaverなどプロ向けソフトを使って作られたページではあまり見かけません)。私は Homepage Builder ユーザではないのでこのソフトの仕様がどうなっているのかわかりません。どなたかご存知の方、ご教示ください。よろしくお願いします。

    • ベストアンサー
    • CSS

専門家に質問してみよう