gpt4 book ai didi

php - 无法读取 DOMDocument 中的元重定向 URL

转载 作者:行者123 更新时间:2023-12-02 23:03:37 25 4
gpt4 key购买 nike

我正在尝试读取网站的元重定向。数据位于curl请求中(我已经构建了一个 stub 来测试)。

不工作的是“读取 URL” - 任何 PHP DOMDocument 专家都能够告诉我为什么这段代码不工作?我正在尝试从元刷新标记中获取 URL。

    $r['body'] = '<HTML><HEAD><TITLE>Meta Refresh Example</TITLE>'.
'<meta http-equiv=refresh content="12; URL=meta2.htm">'.
'<link rel="stylesheet" href="../bwsrstyle.css" type="text/css">'.
'<LINK REL="SHORTCUT ICON" href="/myicon.ico">'.
'<meta http-equiv="Content-Type" content="text/html; charset=></HEAD>'.
'<BODY BGCOLOR="#FFFFFF" TEXT="#000000">foo</BODY></HTML>';

$dom = new DOMDocument();
@$dom->loadHTML($r['body']);
$xpath = new DOMXpath($dom);
$meta_redirect = $xpath->query("//meta[@http-equiv='refresh']");

foreach ($meta_redirect as $node) {
echo "\nNODE: {$node->getAttribute('http-equiv')} ".
"\nURL: {$node->getAttribute('url')}\n";
}

“刷新”正确拉取,但 URL 不正确。

最佳答案

没有属性url=。您需要查询 content= 属性。

 print  "\nURL: {$node->getAttribute('content')}\n"; 

您还必须手动拆分此结果字符串。它包含 2; url= 前缀仍然。这不是 DOM 函数通常处理的事情。

关于php - 无法读取 DOMDocument 中的元重定向 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5916570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com