プロセルピナ | ||||||||||
Top |
Internet |
Private Proxy |
Capture Device |
Download |
Config and Words |
Online Help |
Online Home |
|||
[BACK] | |||||||
☞
Top >
FileDownload >
Macro >
Ex: Command >
AntiAd >
ClientDump >
flow
転送キャプチャとは「転送キャプチャ」は、 Private Proxy(Service部) に実装されている機能で、 Private Proxyにおいて ネット側からWebブラウザ側にデータを転送する際、 そのデータを HTTPリクエスト単位で ファイルにキャプチャする機能です。 「転送キャプチャ」は主に、jpegやgifなどの画像、flvやmp4などの動画、mp3やwavなどのサウンドファイルなど バイナリファイルのキャプチャで使用します。 (HTMLなどのテキストのキャプチャについては HTTP応答キャプチャ を参照) 転送キャプチャによるダウンロードの仕組みダウンロードを開始するには、『プロセルピナ』View部 からマクロを使って 転送キャプチャ を登録します。 この登録は Private Proxy(Service部) に通知されます。 登録の内容は Host と Content-Type のキャプチャ条件、 callbackマクロのフルパス、 補助情報(SubInfo) の4項目です。 Private Proxyでキャプチャが開始されたとき、および 完了したときは、 View部にそのことが通知されます。 View部はこれを callbackマクロ を起動することでユーザーに通知します。 一般的に、キャプチャ完了で起動された callbackマクロで、 転送キャプチャの登録解除を行います。 この登録解除は Private Proxy(Service部) に通知されます。 転送キャプチャの 登録(ClientDump-Reg) と 解除(ClientDump-Del) は、 AntiAdコマンド で行います。 コマンドの詳細は AntiAdコマンド を参照してください。 一般的な流れ
転送キャプチャを登録
View部から、 AntiAdコマンド で転送キャプチャを登録します。 これにより、Private Proxy(Service部) に転送キャプチャの登録が通知されます。
コマンド例
Ex:AntiAd: mode="ClientDump-Reg" dir=Dir.Work targetHost=".zoome.jp" ContentTypeList=str[0] O:waitId=strl["waitId"] O:result=strl[10] CallbackMacro=strl["cbm"] SubInfo=str["title"] ContentTypeList=パラメータに、どのようなContent-Typeを指定すればよいかは HTTPアクセスログなどにより見当をつけます。 パラメータの詳細は AntiAdコマンド を参照してください。
キャプチャ開始が通知されます
Webブラウザでデータ受信(動画再生など)が開始されると、 Private Proxy(Service部) から View部に、 キャプチャ開始が通知されます。 View部から ユーザーへの キャプチャ開始の通知は、callbackマクロを起動する形で行われます。 callbackマクロは、「キャプチャ開始」と「キャプチャ完了」の2回起動されます。 キャプチャ開始で起動されたのか、キャプチャ完了で起動されたのかは、callbackマクロにおいて 渡さたパラメータによって判断し、処理を分岐させる必要があります。 「キャプチャ開始」の場合、 input[1] は CST の3文字です。
キャプチャ完了が通知されます
データ転送が完了すると、 Private Proxy(Service部) から View部に、 キャプチャ完了が通知されます。 View部から ユーザーへの キャプチャ完了の通知は、callbackマクロを起動する形で行われます。 callbackマクロは、「キャプチャ開始」と「キャプチャ完了」の2回起動されます。 キャプチャ開始で起動されたのか、キャプチャ完了で起動されたのかは、callbackマクロにおいて 渡さたパラメータによって判断し、処理を分岐させる必要があります。 「キャプチャ開始」の場合、 input[1] は CBM の3文字です。
キャプチャ登録を解除
「キャプチャ完了」で起動されたcallbackマクロで、 AntiAdコマンドにより 「転送キャプチャ登録の解除」を行います。
コマンド例
Ex:AntiAd: mode="ClientDump-Del" targetHost=".zoome.jp" ContentType="ALL" O:waitId=strl["waitId"] O:result=strl[10] 「転送キャプチャ登録の解除」を行なわない場合、 登録した条件に一致するデータの転送があったときに 再びキャプチャ処理が実行されます。
キャプチャ内容を取得
「キャプチャ完了」で起動されたcallbackマクロにおいて、 input[5] のパラメータで渡された内容が キャプチャファイルのフルパスになっています。 内容の取得は、 Ex:HttpDataConvertコマンドにより により行います。
コマンド例
Ex:HttpDataConvert: file=input[5] dest.Dir=Dir.DeskTop dest.MidName=strl["タイトル"] O:destfile=strl["destf"] O:result=strl["rslt"] 「転送キャプチャ登録の解除」を行なわない場合、 登録した条件に一致するデータの転送があったときに 再びキャプチャ処理が実行されます。 具体例キャプチャ登録マクロ (zoome.jp動画のダウンロード) 上記例のマクロに対応するcallbackマクロの例 上記の2つは、 zoome.jp のサイトの動画をダウンロードするマクロの 具体的な例です。 2つのうちの1つ目のマクロは、 転送キャプチャを登録するもので、起動パラメータとして動画ページのURLを受け取ります (input[0])。 2つ目のマクロは 1つ目のマクロで指定される callbackマクロ です。 転送キャプチャを登録するマクロ(1つ目のマクロ)では、まず渡されたURL(input[0])にアクセスし、 ページのタイトル(titleエレメントの内容)を取得しています。 タイトルは、callbackマクロに渡したいので、AntiAdコマンドの SubInfo= に設定しています。 (callbackマクロでは、 SubInfo= で指定された内容を、 input[6] で受け取ることができます。) SubInfo= に設定できるのは文字列に限りますが、何を設定するかは自由です。 この例では、AntiAdコマンドによる転送キャプチャの登録は 2回行っています。 パラメータが targetHost="^1" になっているものと targetHost=".zoome.jp" になっているものの2つです。 これはzoome.jpに送ったリクエストに対して、動画データを送信してくるホストが 12.34.56.78 のようなIP表示のものと、 zoome.jp 配下のもの(www.zoome.jp など) との2種類があり、どちらになるかがわからないためです。 その為、2つの転送キャプチャの登録を設定しておき、 キャプチャが完了した時点で この両方の転送キャプチャの登録の解除をします。 targetHost=パラメータに ^ 記号 で開始される文字列を指定すると前方一致(StartsWith)で判断します。 例えば ^www. を指定すると www.example.com や www.microsoft.co.jp などがキャプチャ対象となります。 同じように、 ^1 を指定すると 123.456.789.012 や 100.200.300.400 のようなHostがキャプチャ対象となります。 ('1'から開始されないHostは対象外になりますが、 zoome.jpからのダウンロードでは問題ありません。) targetHost=パラメータに . 記号 で開始される文字列を指定すると . 記号を含んだ後方一致(EndsWith) で判断します。 例えば .example.com を指定すると aaa.example.com や aaa.bbb.example.com のようなHostがキャプチャ対象となります。 (※ example.com のホストは example の前に . 記号を持たないため 対象外です) |
|||||||
[BACK] | |||||||
プロセルピナ |