2017-03-08 4 views
1

쿠키를 수락하고 세션 변수에 기록한 다음 웹 세션의 다음 웹 요청에 전달하는 것과 관련이 있기 때문에 제목을 업데이트하고 있습니다. 내가 더 가까울지라도, 나는 아직도 그것을 할 수 없다. 다음 URI에 대해서Invoke-WebRequest : 쿠키 허용

: https://support.microsoft.com/en-us/hotfix/kbhotfix 에는 쿠키가없는 가정이, 한 두 개의 버튼이 표시됩니다 : 내가 사용

에 동의하지 내가

  • 에 동의

    • PowerShell에서의 호출 - WebRequest 클래스 어떻게 동의합니까? 동의합니까? 그물 주변에서 다양한 예제를 사용

      , 나는 다음의 변화 노력했습니다 :

      $baseUri = "https://support.microsoft.com" 
      $uri = $baseURI +"/en-us/hotfix/kbhotfix" 
      
      $Response = Invoke-WebRequest -Uri $uri -SessionVariable sv 
      
      $Response.forms[0].Action #= /en-us/Hotfix/KbHotfix 
      
      $Form = $Response.forms[0] 
      $form.fields["accept"] = "Accept" 
      
      $MainPage = Invoke-WebRequest -Uri ($baseUri + $Form.Action) -Method 
      $form.Method -Body $form.fields -WebSession $sv 
      $MainPage 
      

      을하지만 실행할 때 나는 "$ MainPage.forms [0] .Fields을, 결과 값은" 동의하지 않음 "또는"동의 함 "을 표시하고"동의 함 "을 클릭하지 않았 음을 나타냅니다.

      onClick 이벤트를 호출해야합니까?

      감사의 말을 들어 주시면 감사하겠습니다.

      (PowerShell을 V5)

      당신은 단지 추가 쿠키 추가 할 필요가
  • 답변

    0

    :

    $cookie = New-Object System.Net.Cookie("hotfixEulaCookie", "1", "/", "support.microsoft.com") 
    $sv.Cookies.Add($cookie) 
    

    내가 당신도 첫 번째 요청이 필요하지 않습니다 생각합니다. 변수 WebRequestSession을 만들고 그 단일 쿠키를 추가하십시오.

    • 이와 교환 및
    • 봐 형태의 HTML 코드에서 쿠키 및 스크립트
    • 플레이를 볼 수있는 웹 브라우저의 F12 개발자 도구를 사용하여 미래에 이러한 문제를 해결하는 방법

      : 양식은 HTML에서 어떻게 보이는지 피들러의 요청 작곡가의 HTTP 요청은

    입니다 0

    <input class="eulabutton" id="cancel" name="cancel" onclick="onHotfixEulaAction('cancel', '/kb//')" type="button" value="I Do Not Accept" ms.cmptyp="button" ms.cmpnm="noacpt" ms.title="Donot Accept" ms.interactiontype="22"> 
    <input class="eulabutton" id="accept" name="accept" onclick="onHotfixEulaAction('accept', '/hotfix/kbhotfix?kbnum=&amp;kbln=')" type="button" value="I Accept" ms.cmptyp="button" ms.cmpnm="acpt" ms.title="Accept" ms.interactiontype="22"> 
    

    우리는 onHotfixEulaAction 검색하고

    https://az623152.vo.msecnd.net/cdnresources/2.38/common/script/gsfx/default.js

    function onHotfixEulaAction(arg, url) { 
        setcookieval("hotfixEulaCookie", (arg == "accept") ? '1' : '0', '', false); 
        document.location.href = url; 
    } 
    
    찾기