私はこのWebページを解析する必要が....POST要求の結果であるHTMLページを解析するには(PHPではcurl、JSONPath、Xpathを使用します)?
...ルの列の下の表にある数字「ROSSO」を抽出するためにPHPを使用して、GIALLO」、 『VERDE』と「BIANCO」
(注:あなたがそれを閲覧しようとした場合、あなたが...それは問題ではない...そのページに別の値を見ることができ,,それはdinamically変更.... )
これらの値は、Webページ内のPOSTリクエスト結果です。
これは、curlを使用してPOSTリクエストを送信し、JSON応答を解析する(Skyscanner JSON Pathを使用して、コード内で正常に動作しています)という値を抽出しようとしているPHPコードです。 XPath解析を使用します。
<?php
include "./tmp/vendor/autoload.php";
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => "http://monitorps.sardegnasalute.it/monitorps/MonitorServlet",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "idMacroArea=null&codiceAziendaSanitaria=200102&idAreaVasta=null&idPresidio=102MAD02&idProntoSoccorso=30&tipoProntoSoccorso=TUTTI&vicini=null&xhr=true",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded"
),
));
$server_output = curl_exec ($ch);
curl_close ($ch);
$jsonObject = new JsonPath\JsonObject($server_output);
$jsonPathExpr = '$..view';
$res = $jsonObject->get($jsonPathExpr);
print $res[0];
$dom = new DOMDocument();
@$dom->loadHTML(json_encode($res[0]));
$xpath = new DOMXPath($dom);
$xpath_for_parsing = '/html/body/div[1]/div/div/div/table/tbody/tr[2]/td[4]';
$colorWaitingNumber = $xpath->query($xpath_for_parsing);
$theValue = 'N.D.';
foreach($colorWaitingNumber as $node)
{
$theValue = $node->nodeValue;
}
print $theValue;
?>
結果は...以下の画像の表は、私のコードでコマンドの結果である
に
print $res[0];
と
ですND
私は、私はそれがページのソースコードを確認するチェックしました使用していたXPathについての私の目標値
の1を抽出するために解析しようとすると......
結果であり、どこが間違っていますか?