• ベストアンサー

ブラウザを使わないでログインするプログラム

オークションやウェブメールなどID、パスの入力が必要なページに、ブラウザを使わないでログインしたいのですが可能でしょうか? どんな言語が良いか(簡単か)? どんな知識が必要か? このキーワードで調べなさいという事でも構わないのでご教授下さい。 宜しくお願いします。

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

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

PerlやRubyだとMechanizeというライブラリがあり、ブラウザの挙動をシュミレートしてくれます。クッキーなども大丈夫。 参考:http://e8y.net/mag/007-www-mechanize/ すでにPHPでプログラミング経験があるならPerlがいいでしょう。 これからプログラミングを始めるならRubyがいいでしょう。 HTMLの解析は、Rubyだとhpricotというライブラリがあります。Perlはよく知りませんが、きっとあります。

narusuji
質問者

お礼

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というキーワードを教えてもらっただけでも十分な収穫でした。 ありがとうございました。

その他の回答 (3)

  • oops1967
  • ベストアンサー率62% (5/8)
回答No.4

初めまして、narusuji様 以前、Borland Delphi4でhttpを利用したクライアントサーバ型のソフトウェアを作成しました。 httpのサンプルがあったので、簡単に出来ました。 ただ、相手(この場合、オークションやウェブメールのサーバ)の仕組みが解らないと、ログインできない、ログインしてもその先に進めない、と言う事になるのでは?と、思いますがいかがでしょうか?

narusuji
質問者

お礼

とりあえずサーバに置いてcronで呼び出してみたいのでrubyかperlで挑戦してみます。 Delphiもつい最近インストールしたばかりなので、いろいろいじってみたいと思います。 ご回答ありがとうございました。

noname#58606
noname#58606
回答No.2

サンワサプライ@OKWave > [技術者向] コンピューター > プログラミング > その他(プログラミング)  の方ですねー。 PHPでは、ちと荷が重いです。 たぶん、Visual Basic という意見が出てくると思うので、 [技術者向] コンピューター > プログラミング > Visual Basic こちらに、これって初心者では、どれくらいの期間で作成出来そうですか?とか聞くといいかもしれません。 ただ、ネットに接続するプログラムになるので、ちょっと中級者向けですね。

  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

やりたいことの意味がいまいちわかりません ブラウザを使わないってことは?どうやって画面を描画させるのでしょう? それとも、独立したアプリケーションを使ってっていう意味ですか?? そうなると、ブラウザと似たようなものを作ることになります 結局はブラウザを作ることになりますよ。 具体的な例を挙げてもらえればよいかと思います。

narusuji
質問者

補足

説明不足でした。 PHPのカテゴリが適当でないかもしてません。 例えば証券会社のページにブラウザを使わずプログラムでログインし、欲しい情報を(HTML形式などで)取得したいという意味です。