2012-01-19 9 views
1

パスワードで保護されたJavaScript対応のWebアプリケーションからデータを通信して取得するために、Pythonアプリケーションを作成する必要があります。PythonでJavaScript Webアプリケーションを解析するオプション

webappは残念なことにJavaScriptを実行する必要があり、JavaScriptが無効な場合は動作しません。したがって、データをフェッチしようとすると、 'urllib2'と 'requests'は機能しません。

この時点で私のオプションは何ですか?私がFirebugのようなツールを使ってHTTPトラフィックを取得し、このトラフィックをいくつかのPythonメソッドで再試行した場合、これは機能しますか?私が行うには、スクリプトのために必要なのは次のとおりです。ウェブサイトへの

  1. ログイン
  2. 変更ドロップダウン項目
  3. グラブテキストの一行とログアウトは
+1

はい、はい。サーバーは、要求がJavaScriptか他のコードによって行われたかどうかを知る方法がありません。 Webアプリケーションの要求をリバースエンジニアリングし、Pythonで再現する必要があります。火かき棒は良い出発点になります、多分Wiresharkを試してみてください。 – cha0site

+1

この関連[質問](http://stackoverflow.com/q/8323728/183066)はあなたの問題に役立つはずです。 – jcollado

+0

恐ろしい:)おかげでみんな!あなたがhttpパケットを再生する方法について私に良い記事を指すことができれば...それはすばらしい:)))))は絶対に – Cmag

答えて

1

あなたの最善の策は、実行することですJavaScriptを理解しているPyPhantomJSのようなヘッドレスブラウザ。あなたはjavascriptであなたのコードを書く必要があり、あなたが望むものを何でもすることができます。

これは、DOM処理、CSSセレクタ、もちろんJavaScriptを素早くネイティブにサポートしています。

+0

を続けるでしょう!ありがとうございました!私はちょうどまたjavascriptを学び始めました!これは超楽しいプロジェクトに変わります:) – Cmag

+0

ああ、JavaScriptは楽しいです。私もNode.jsの学習を始めました。 – RanRag

+0

@RanRag ...ここに壁を打つ。私はスクリプトを実行するphantomjsを得ることができる...しかし実際にウェブサイトにログインし、いくつかのデータをプルダウンしない... – Cmag

関連する問題