Web サイトにログインする php スクリプトがあり、xpath クエリを実行して特定のタグを取得しようとしています。ページをローカルに保存して xpath を実行すると、すべてうまくいきます。ただし、サイトにログインして xpath を実行すると、タグの下部にある html コメントのみが返されます。だから - 私が持っている場合:
<html>
<body>
something here
<!--comment here-->
</body>
</html>
//html/body で xpath クエリを指定すると、「ここにコメント」のみが返され、他には何も返されません。
私は非常に混乱しており、このようなものを見たことがありません - 何かアイデアはありますか?
編集:これはcurlログイン後の私のphpです(これは成功しています)-それはかなり標準的です:
$file = REDACTED;
$doc = new DOMDocument();
$doc->loadHTMLFile($file);
$xpath = new DOMXpath($doc);
$elements = $xpath->query("//html/body/div[1]");
if (!is_null($elements)) {
foreach ($elements as $element) {
$nodes = $element->childNodes;
foreach ($nodes as $node) {
$out = $node->nodeValue;
}
}
}
echo $out;