質問

Webサイトに接続してログインしています。

ウェブサイトは新しいページにリダイレクトされ、MechanizeはすべてのCookieおよびリダイレクトジョブを処理しますが、最後のページを取得できません。 Firebugを使用して同じ仕事をしましたが、Mechanizeで渡す必要があるページがさらに2つあることがわかりました。

ページをざっと見てみると、JavaScriptとHTMLのコードがあることがわかりましたが、通常のページコードのように見えないため、理解できませんでした。それらのページは何のためのものですか?他のページにリダイレクトする方法は?これらを渡すにはどうすればいいですか?

役に立ちましたか?

解決

JavaScriptを使用してページを処理する必要がある場合は、 WATIR または Selenium -これらは実際のWebブラウザを駆動するため、任意のJavascriptを処理できます。 WATIR Classicには、特定の拡張機能がインストールされたIEまたはFirefoxのいずれかが必要です。動作すると画面上でページが点滅します。

他のオプションは、問題のあるページのJavascriptが何をするのかを理解し、手動でバイパスすることですが、それは面倒です。

他のヒント

現在、MechanizeはJavaScriptを処理しません。最終的に Johnson の機能をMechanizeにマージするという話がありますが、それまでは2つの選択肢があります:

  1. JavaScriptを十分に理解して、これらのページをトラバースする方法を理解します。
  2. Watir を使用して、JavaScriptを理解する 実際のブラウザを自動化します。
  3. >
  

これらのページは何のためのものですか?他のページにリダイレクトする方法。これらを渡すにはどうすればいいですか?

これらのページで作業が行われる場合があります。あなたがやろうとしているような自動化されたアクセスを防ぐために、JavaScriptが存在することもあります:)。多くのウェブサイトでは、「良い」ことを確認するために不必要なチェックを行っています。ブラウザであるため、 user_agent がIEなどの一般的なものに設定されていることを確認してください。古いブラウザのように見えるように user_agent を設定すると、JavaScriptがなくても通過できる場合があります。

複数の戦略を使用して、Webサイトとそのソフトウェア開発者を裏切る必要があるため、Webサイトの自動化は楽しいものです。他の人が言ったように、Watirは現時点でJavaScriptを通過するための最良のツールです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top