我的工作小组最近有了一个新的工作站,我写的一个从网页上收集报告的脚本运行起来很慢。新的工作站是Win7 Ent。带有IE11的x64 12GB RAM I5-3470。较旧的工作站是Win7 Ent。 x86 4GB i5-2400与IE11,所以它不应该是硬件问题或由于不同的IE版本。
...
$table = $doc.getElementById("T1020")
$span = $table.getElementsByTagName("span")
foreach($s in $span) { $s.innerText }
在旧工作站上,foreach循环将在一两秒内吐出数百行。然而,在新的工作站上,它每秒输出2-4行。它不仅仅是一个网页,它也在其他网页上也是如此。
为什么对$ s.innerText的调用会在新系统上花费这么长时间?是否有一些限制速度的IE或PowerShell设置?我怎样才能弄清楚造成这种情况的原因是什么?