- ベストアンサー
ブラウザを使わないでログインするプログラム
オークションやウェブメールなどID、パスの入力が必要なページに、ブラウザを使わないでログインしたいのですが可能でしょうか? どんな言語が良いか(簡単か)? どんな知識が必要か? このキーワードで調べなさいという事でも構わないのでご教授下さい。 宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
PerlやRubyだとMechanizeというライブラリがあり、ブラウザの挙動をシュミレートしてくれます。クッキーなども大丈夫。 参考:http://e8y.net/mag/007-www-mechanize/ すでにPHPでプログラミング経験があるならPerlがいいでしょう。 これからプログラミングを始めるならRubyがいいでしょう。 HTMLの解析は、Rubyだとhpricotというライブラリがあります。Perlはよく知りませんが、きっとあります。
その他の回答 (3)
- oops1967
- ベストアンサー率62% (5/8)
初めまして、narusuji様 以前、Borland Delphi4でhttpを利用したクライアントサーバ型のソフトウェアを作成しました。 httpのサンプルがあったので、簡単に出来ました。 ただ、相手(この場合、オークションやウェブメールのサーバ)の仕組みが解らないと、ログインできない、ログインしてもその先に進めない、と言う事になるのでは?と、思いますがいかがでしょうか?
お礼
とりあえずサーバに置いてcronで呼び出してみたいのでrubyかperlで挑戦してみます。 Delphiもつい最近インストールしたばかりなので、いろいろいじってみたいと思います。 ご回答ありがとうございました。
サンワサプライ@OKWave > [技術者向] コンピューター > プログラミング > その他(プログラミング) の方ですねー。 PHPでは、ちと荷が重いです。 たぶん、Visual Basic という意見が出てくると思うので、 [技術者向] コンピューター > プログラミング > Visual Basic こちらに、これって初心者では、どれくらいの期間で作成出来そうですか?とか聞くといいかもしれません。 ただ、ネットに接続するプログラムになるので、ちょっと中級者向けですね。
- inu2
- ベストアンサー率33% (1229/3720)
やりたいことの意味がいまいちわかりません ブラウザを使わないってことは?どうやって画面を描画させるのでしょう? それとも、独立したアプリケーションを使ってっていう意味ですか?? そうなると、ブラウザと似たようなものを作ることになります 結局はブラウザを作ることになりますよ。 具体的な例を挙げてもらえればよいかと思います。
補足
説明不足でした。 PHPのカテゴリが適当でないかもしてません。 例えば証券会社のページにブラウザを使わずプログラムでログインし、欲しい情報を(HTML形式などで)取得したいという意味です。
お礼
Mechanizeでばっちりでした。 http://mono.kmc.gr.jp/~yhara/rubyscraping/?Mechanize 上記アドレスを参考に、yahooメールにログインするプログラムを書いてみました。 指定したIDで出力ファイルを開いたところ、無事メール画面に辿り着いたので一応動いたっぽいです。 require 'rubygems' require 'mechanize' agent = WWW::Mechanize.new agent.user_agent_alias = 'Windows Mozilla' page = agent.get('https://login.yahoo.co.jp/config/login_verify2?.src=ym') search_form = page.forms.with.name('login_form').first search_form.login = 'id' search_form.passwd = 'pass' search_results = agent.submit(search_form) puts search_results.body handle = open("output.html", "w") handle.puts search_results.body handle.close rubyは初めてなので変数に何が入っているかや、どういう風に動作しているかなど全く理解できていません。 rubyだけでなくperlでもチャレンジしてみようと思います。 mechanizeというキーワードを教えてもらっただけでも十分な収穫でした。 ありがとうございました。