>

텍스트 파일에 나열된 모든 URL에 대해 P html 요소의 innerText를 검색하려고합니다. 나는 이것에 대해 다소 초보자이지만 해결할 수 있다고 생각했습니다. ATM. 루프에 대해 각 배열 항목을 올바르게 전달하는 방법을 처리 할 수 ​​없으므로 실패했습니다.

$theURLS = Import-CSV linkek_alatt.txt
$item = New-Object System.Collections.ArrayList
for ($i=0; $i -le $theURLS.length;$i++)
{
foreach($item in $theURLS)
{
$Site = Invoke-WebRequest -URI $item
$Igotit = $Site.AllElements | Where-Object {$_.tagName -eq "P"} |
Select -First 1 -Skip 3 -ExpandProperty innerText
$Igotit
}
}
> FilteredContent.txt

필터링 된 파일은 정보를 포함해야합니다.

지금은 "Invoke-WebRequest : 'Uri'매개 변수를 바인딩 할 수 없습니다." "@ {"오류를 변환 할 수 없으며 반복 된 첫 번째 URL과 임의의 다음 단계에 대한 URL이 표시되고 오류 메시지에 하나가 표시됩니다. 어떤 아이디어라도 환영합니다. 친애하는, 게자


  • 답변 # 1

    의견에 따르면 Import-CSV 를 사용하고 있기 때문에 문제가 발생합니다  여기 :

    $theURLS = Import-CSV linkek_alatt.txt
    
    

    파일의 첫 번째 텍스트 줄을 헤더로 사용하여 PowerShell 개체를 만들려고 시도합니다.

    .txt 파일이 .csv 파일이 아니고 문자열 배열을 반환하려면 대신 Get-Content 를 사용하십시오 :

    $theURLS = Get-Content linkek_alatt.txt
    
    

    파일이 CSV 파일 인 경우 Invoke-WebRequest 에서 URL을 사용할 때 URL 헤더와 일치하는 속성 이름을 참조해야합니다. . 예 : 헤더가 "URL"인 경우 :

    Invoke-WebRequest -URI $item.URL
    
    

    그러나 이것이 사실이 아닌 것 같습니다.

관련 자료

  • 이전 go - httpFileServer가"404 페이지를 찾을 수 없음"을 전송 중입니다
  • 다음 c# - MVC에서 BLOB 데이터를 파일로 다운로드