简单XML脚本正在消耗所有可用内存
我试图创建一个简单的脚本,为每个ip地址添加一个新的代理。 脚本先到达id125,然后再减速到绝对爬网。我不知道为什么它会消耗这么多内存,有人能帮我优化我在这里做的事情吗简单XML脚本正在消耗所有可用内存,xml,powershell,optimization,Xml,Powershell,Optimization,我试图创建一个简单的脚本,为每个ip地址添加一个新的代理。 脚本先到达id125,然后再减速到绝对爬网。我不知道为什么它会消耗这么多内存,有人能帮我优化我在这里做的事情吗 $xml = New-Object -TypeName XML $xml.Load($Path) $ipAddresses = Get-Content "D:\Downloads\ipaddresses.txt" $proxy = ($xml.ProxifierProfile.ProxyList.Proxy
$xml = New-Object -TypeName XML
$xml.Load($Path)
$ipAddresses = Get-Content "D:\Downloads\ipaddresses.txt"
$proxy = ($xml.ProxifierProfile.ProxyList.Proxy[0])
$counter = 102
foreach($ipAddress in $ipAddresses){
$newproxy = $proxy.CloneNode($true)
$newproxy.id = [string](++$counter)
$newproxy.Address = [string]$ipAddress
$proxy.AppendChild($newproxy)
}
$newpath = "c:\temp\newfile.ppx"
$xml.Save($newpath)
已经开始工作了,谢谢。不知道为什么AppendChild和insertafter的工作方式不一样
$xml = New-Object -TypeName XML
$xml.Load($Path)
$ipAddresses = Get-Content "D:\Downloads\ipaddresses.txt"
$newpath = "c:\temp\newfile.ppx"
$proxy = ($xml.ProxifierProfile.ProxyList.Proxy[-1])
$counter = 101
foreach($ipAddress in $ipAddresses){
$newproxy = $proxy.CloneNode($true)
$newproxy.id = [string](++$counter)
$newproxy.Address = [string]$ipAddress
$Latestproxy = $xml
$proxy.ParentNode.InsertAfter($newproxy,$proxy)
}
$xml.Save($newpath)
尝试使用较短的循环,并查看生成的XML。我认为您的逻辑中有一个错误。我怀疑您会发现,如果您仅使用一个简短的IP地址列表来尝试此操作,您会发现它并没有达到您预期的效果……”“不确定为什么AppendChild和insertafter不能以类似方式工作。”它们都完全按照自己的名字执行:
AppendChild
将一个子元素添加到您调用它的元素中InsertAfter
在给定目标(第二个参数)后添加新元素。