私が投稿しているサイトによって生成された新しいウィンドウ(Javascriptのwindow.open()を使用)からデータを削り取ろうとしています。 cUrlを介して、私はこれについて行く方法がわかりません。PHP Curl - JavaScriptによって作成されたwindow.openのデータを持つサイトからのデータのスクラブ
ターゲットサイトでは、特定のパラメータが投稿されたときにのみ、この必要なデータが生成されます。
次のコードは、単純にcUrl要求の結果をダンプしますが、結果には関連するデータは含まれていません。
マイコード:
//build post data for request
$proofData = array("formula" => $formula,
"proof" => $proof,
"action" => $action);
$postProofData = http_build_query($proofData);
$ch = curl_init($url); //open connection
//sort curl settings for request
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 3);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postProofData);
//obtain data from LigLab
$result = curl_exec($ch);
//finish connection
curl_close($ch);
echo "forumla: " . $formula;
var_dump($result);
次のコード
標的部位のコード生成されたものである。
var proof = "<?php echo str_replace("\n","|",$annoted_proof) ?>";
var lines = proof.split('|');
proof_window=window.open("","Proof and Justifications","scrollbar=yes,resizable=yes, titlebar=yes,menubar=yes,status=yes,width= 800, height=800, alwaysRaised=yes");
for(var i = 0;i < lines.length;i++){
proof_window.document.write(lines[i]);
proof_window.document.write("\n");
}
私は、変数のラインをこすりしたいが、それはページのロード後に生成されますユーザーのやりとり後
を開始することができますあなたは、ヘッドレスブラウザが必要です。 – SLaks
間違いなく試してみましょう、ありがとう! –