我想把整个站点变成这样的DOM对象:
$dom = new DOMDocument('1.0');
$dom->loadHTMLFile('http://thissite.com');
,这样我就可以操作它并保存一个模板。
然而,一些对象(标签我已经注意到)剥离自定义属性,因此:
<a href="/link/to/page/" aria-haspopup="true">Link Name</a>
更改:
<a href="/link/to/page/">Link Name</a>
有没有办法阻止这种情况的发生?
更新:看起来这不是问题,我会在下面留下答案来解释并可能帮助其他人。
所以问题不是自定义属性。这个自定义属性是稍后通过javascript插入的,它只是得到了错误的javascript文件链接。
在故障排除时,我正在查看"inspect元素"而不是页面源。如果您有这个问题,请查看原始页面源代码(不使用inspect),并查看属性(或与原始代码的任何差异)在DOMDocument中的代码之间是否不同(通过使用echo $dom->saveHTML();)。
如果这是相同的,那么DOMDocument不是问题,你需要检查你的javascript(他们是相对链接)等