xml - 如何将每个 URL 的值导出到不同的 XML 文件
问题描述
我有一个脚本可以从多个 URL:s 获取 API 数据(我无法全部获取,因为它被限制为特定数量)我可以使用 Transcript 将所有 URL:s 中的所有数据导出到一个文件(100 页每页 1000 个帖子)。但是我们需要将所有数据从一个 URL 导出到一个文件,并将下一个 URL 导出到另一个文件等。我尝试使用下面的代码执行此操作,但我得到 2 个文件(使用两个 URL:s)但所有数据都在第一个文件。不太清楚如何解决这个问题。
Import-Module pscx
function Ignore-SelfSignedCerts
{
try
{
#Write-Host "Adding TrustAllCertsPolicy type." -ForegroundColor White
Add-Type -TypeDefinition @"
using System.Net;
using System.Security.Cryptography.X509Certificates;
public class TrustAllCertsPolicy : ICertificatePolicy
{
public bool CheckValidationResult(
ServicePoint srvPoint, X509Certificate certificate,
WebRequest request, int certificateProblem)
{
return true;
}
}
"@
#Write-Host "TrustAllCertsPolicy type added." -ForegroundColor White
}
catch
{
#Write-Host $_ -ForegroundColor "Yellow"
}
[System.Net.ServicePointManager]::CertificatePolicy = New-Object TrustAllCertsPolicy
}
Ignore-SelfSignedCerts
$option = [System.StringSplitOptions]::RemoveEmptyEntries
$Uri = "https://prime/webacs/api/v1/data/Clients?.firstResult=0&.maxResults=1&.full=true,
https://prime/webacs/api/v1/data/Clients?.firstResult=2&.maxResults=1&.full=true"
$separator = ","
$urlList = $Uri.Split($separator, $option)
function Get-BasicAuthCreds {
param([string]$Username,[string]$Password)
$AuthString = "{0}:{1}" -f $Username,$Password
$AuthBytes = [System.Text.Encoding]::Ascii.GetBytes($AuthString)
return [Convert]::ToBase64String($AuthBytes)
}
$BasicCreds = Get-BasicAuthCreds -Username "User" -Password "Password"
$StartNum = 0
$Result = $null
$Result = foreach ($url in $urlList){
Start-Transcript -Path "C:\Data\URL\$StartNum.xml"
$DataURL = Invoke-WebRequest -Uri $url -Headers @{"Authorization"="Basic $BasicCreds"}
Write-Host $DataURL
# Give feedback on how far we are
Write-Host ("Initiated request for {0}" -f $url)
$StartNum++
cls
Stop-Transcript
$DataURL = $null
}
解决方案
我设法解决了它。我需要将 Web-Request 中的数据放置到一个变量中,每次循环结束时我都会清除该变量。以上代码已更新。
推荐阅读
- python-3.x - ValueError:无法为具有形状“(?,4)”的张量“Placeholder_36:0”提供形状(4,)的值
- python - Python 3:检查命令是否在“if .. else”块中无异常运行,而不使用“try .. except”
- javascript - 使用外部 Javascript 文件在 html 中制作按钮执行事件
- c# - 让页面(已经由母版制作)在其中动态加载内容的推荐策略?
- scala - 为什么顺序在事件中很重要?Coursera-Scala
- xslt - XSL 字体大小计算
- string - 我需要从 URL 路径中提取特定字符串
- pandas - 如何根据一列中的唯一值将 df 拆分为更小的 df,然后将每个 df 旋转到另一列
- angular - 更好地控制 Angular 渲染
- python - 在 django restframework search_filter 中禁用多重搜索