社内のイントラネット上のiframeからデータを収集する外部のWebサイトを運営しています。この部分はJavascriptで書かれており、機能しています。ただし、Pythonでさらに処理するには、jsが収集しているデータにアクセスする必要があります。Javascriptで処理することはできません。また、技術的には不可能です。
ここからどこへ行くべきかについてのいくつかの指針をいただければ幸いです。JavaScriptデータをPythonスクリプトに取り込むにはどうすればよいですか?
社内のイントラネット上のiframeからデータを収集する外部のWebサイトを運営しています。この部分はJavascriptで書かれており、機能しています。ただし、Pythonでさらに処理するには、jsが収集しているデータにアクセスする必要があります。Javascriptで処理することはできません。また、技術的には不可能です。
ここからどこへ行くべきかについてのいくつかの指針をいただければ幸いです。JavaScriptデータをPythonスクリプトに取り込むにはどうすればよいですか?
Pythonが処理するバックエンドのサーバーにjavascriptデータを渡すには、AJAX呼び出しを使用する必要があります。これを行う最良の方法は、データをJSONオブジェクトにエンコードし、AJAX呼び出しで渡すことです。
json_obj = {your:[data]};
$.ajax{
url: [url of webservice/action],
type: "POST",
data: json_obj,
dataType: "json",
success: function(result) {
//Write your code here
}
}
//Note that this does run asynchronously, so the code that follows this will not wait for the ajax call to finish
Pythonには気の利いたモジュールjsonがあり、これを使用してJSONオブジェクトをPythonオブジェクトにデコードできます。
import json
data_obj = json.loads(json_data_string)
これにより、JavaScriptでアセンブルしたjson文字列がAJAXを使用してPythonに渡され、Python構造(オブジェクトの構築方法に応じて辞書またはリスト)に入れられ、Python処理が容易になります。
次に、dumps()関数を使用してJSON文字列を返すことができます。
data_str = json.dumps(data_obj)
出典: