1

私はこの小さな問題を抱えています。最初にリンクをクリックしてから、リンクが提供するフォームに入力するカールスクリプトを作成しました。

リンクはhttp://www.fikeandfike.com/propertytax/Grundy/MainMenu.aspx?c=32の「小包のお問い合わせ」です。

フォームはhttp://www.fikeandfike.com/propertytax/Grundy/Inquiry.aspxにあります

しかし、私の問題は、スクリプトがフォームを埋めるだけで、それに対して何もしていないことです

カールの結果をエコーすると、フォームがいっぱいになっていることがわかりますが、フォームの結果を見たいです

なぜこれが起こっているのか教えてください。この問題を乗り越えるためのトリックを提案できますか?

4

1 に答える 1

0

コメントで述べたように、問題は、「スクレイピング」しようとしているサイトが、従来の方法でフォーム データを使用しない ASP.net を使用して構築されていることです。

これをうまく機能させた人を知っていますが、面倒です。注意すべき重要な非表示フィールドは次のとおりです。

  • __EVENTTARGETand __EVENTARGUMENT: これらは、フォームを送信するときに Javascript によって設定されますが、常に同じ値になります。ブラウザ デバッグ ツール (Firebug、URLParams など) を使用して実際の POST の結果を調べると、これらを問題なく入力できます。
  • __VIEWSTATE: これは、ページが読み込まれるたびに新たに生成されるため、リクエストするたびに、読み込まれたフォームの HTML からスクレイピングする必要があります。
  • __EVENTVALIDATION: このフィールドは、試みているなりすましを防止するために特に存在します。と同様__VIEWSTATEに、ページが読み込まれるたびに再生成されますが、その存在は、送信した内容を以前の状態に対して検証するため、一度に 1 つのフィールドしか変更できないことを意味する場合があります。

ここでの詳細のいくつかは間違っているかもしれませんが、それはあなたにどこかから始めることを与えるはずです...

于 2012-08-20T23:45:22.583 に答える