• ベストアンサー

オークションサイトに自動で入札するCGI

オークションサイトにアクセルして、あるIDでログインして、指定のオークションに入札するところまでを自動で行うCGIを作りたいと思っています。 そこで、このことが可能な言語 また参考になる本、資料などなんでも構いません。 手がかりとなるものを教えていただけないでしょうか?

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

  • ベストアンサー
  • kaeru_007
  • ベストアンサー率22% (8/36)
回答No.2

1です。 あー、なるほど! 難易度は高くはないと思うんですが、 ページデザインが変わるとPG修正が必要になってしまうという事と、 デザイン変更とか、バグとかでアクセスエラー出してしまった時に、サイトの人に注意されるかもしれませんw 一回、POSTメソッドによるリクエストが動けば、 あとはさくさく進むと思いますが、 サイトのHTMLを解析するのが、結構地道な作業です。

gomainfo
質問者

お礼

レンタルサーバーを借りているので、Socketが使えるのかどうかを確認しています。 もしかしたら、使えないかもしれません。 Socketについては、少し調べてみました。 PerlでSocketを使用して、ホームページの一部を取得するような例文はあったのですが、Socketを利用すれば、テキストボックスに金額を入れたり、送信キーを押したりすることも出来ると考えて良いのでしょうか?

その他の回答 (2)

  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.3

>Socketを利用すれば、テキストボックスに金額を入れたり、送信キーを押したりすることも出来ると考えて良いのでしょうか? Socketを使用して生のHTTPメッセージを送受信するので関係ありません。 ちなみに下の方は難易度があまり高くないと書かれていますが、非常にシンプルなHPの場合に限ります。 SSLを使用しているサイトの場合(最近SSLじゃない方が少ない?)、証明書の解析、暗号化、復号など多大な労力がかかります。 他にもCookieやJavaScript等の考慮が必要だと思われます。ログイン系のHPの場合、Sessionを利用するのが一般的ですが、そのSessionを区別するためにCookieが使われることが多いです。他にも、リクエストパラメータをJavaScriptで編集して送信するようなこともたまにあります。JavaScriptは無視するとしてもCookieとSSLは考慮しておかなければならないでしょう。 私見としては、そのオークションサイトがSSLを使用してたらあきらめた方が良いと思います。

gomainfo
質問者

お礼

ありがとうございます。 オークションサイトは、ログインにSSLを使っていました。 ログインの部分がなければ、何とかなるような気もしますが、かなり労力がかかりそうなので別の方法を考えたいと思います。 ありがとうございました。

  • kaeru_007
  • ベストアンサー率22% (8/36)
回答No.1

競馬の出走場とか、結果とか払い戻しとかの情報を自動で取得して、ほぼリアルタイムで馬券のシミュレーションを行うサイトを運営している(していた?)者です。 CGIで作りたいということであれば、PerlでもPHPでもCでも、可能です。 要は、Socketライブラリが使えれば、どんな言語でもOKです。 なんでCGIなのかわかりませんが、CGIはトリガーが無いと動かないので、Cronとかで定期的(?)に自動起動する必要があります。 Telnetログイン出来ないレンタルサーバーの場合、Cronの設定が自分で出来ないと思うので、その辺も気にしてみてください。(代理で設定してもらえるのか、とか) 別にCGIじゃなくてもいいのであれば、Windowsアプリって事で、VC++だろうとなんだろうと、HTTPリクエストが出来る言語であれば問題ありません。 参考となる手がかりについてですが、HTTPリクエストの事だけがどっぷり書かれている市販の本っていうのは思い当たらないし、多分あまりないと思います。 市販の技術書は5000円位して高価だし、長い目で見てあまり必要性がないので、下のようなキーワードを検索エンジンで探してみてください。 眺めているうちに段々とわかってくると思いますよ。 キーワード:HTTP POST Socket クライアント

gomainfo
質問者

お礼

ありがとうございます。PHPは分かるので、PHPで作成したいと思っています。CGIである理由は、例えば、オークションページを指定、入札額を入れて送信のボタンを押したときに、自動的にオークションページにアクセスしてログイン、入札してほしいのです。 難易度は、高いでしょうか?

関連するQ&A

専門家に質問してみよう