1

私は、更新ボタンを押すと、サイトにアクセスするたびにゲームの統計情報が収集されるサイトのメンバーです..これが 1 日に 1 回自動的に行われるようにしたいのですが、そうすべきだと言われました。 cronjobを通じて可能になる...

ページは: http://bfbc2.statsverse.com/stats/ps3/ChiefOfVikings/

トリッキーな部分は、更新がjavascriptによってトリガーされることです..しかし、私が知る限り、javascriptはこれだけです:

$.ajax(
  {
    type:"POST",
    data: { action: "updatenow" },
  })
}

(確かではありませんが)

cronjob を介して 1 日 1 回自動的に更新がトリガーされる方法を誰かが見つけるのを手伝ってくれますか?

4

1 に答える 1

0

curlでこれを行うことができます。Curl を使用すると、URL の GET および POST を作成して、ブラウザーのアクションを模倣できます (他の HTTP タイプもサポートされています)。次のようなことを行うことで、curl を機能させることができます。

curl -L -i -v -c sitecookie.txt -b sitecookie.txt -d action=updatenow http://bfbc2.statsverse.com/stats/ps3/ChiefOfVikings/

オプションは次のとおりです。

  • -L= リダイレクトに従う (HTTP 301 または 302)
  • -i= サーバーから返された HTTP ヘッダーを出力に含めます
  • -v= 詳細
  • -csitecookie.txt = クッキーを sitecookie.txt に書き込みます
  • -bsitecookie.txt = URL にデータを送信するときに、sitecookie.txt から Cookie を読み取ります
  • -d action=updatenow= HTTP POST アクション = URL への updatenow

-kサーバーが HTTPS で暗号化されている場合も必要になる場合があります。その他のオプションとドキュメントについては、 curl のマンページを参照してください。

最後に、POST 先の URL は ajax の送信先の URL でなければなりません。

これをコマンド ラインから実行したら、それをスクリプトに入れて、毎日 cronjob からスクリプトを実行します。

于 2011-09-13T08:31:14.777 に答える