아래 스크립트와 같이 만들면 된다.
이 스크립트의 앞 부분에는
$ie = New-Object -com internetexplorer.application
#
# 내가 수집해야 하는 정보는 nn이라는 항목이다.(intro, chk는 고정 값)
#
$ie.Document.getElementsByName('nn') | %{ $nn = $_.value}
$ie.Document.getElementsByName('intro') | %{ $intro = $_.value}
$ie.Document.getElementsByName('chk') | %{ $chk = $_.value}
$ie.document.forms | %{$action = $_.action}
#
# 내가 직접 설정하는 정보는 아래와 같다.
# 한글 및 특수기호 때문에 url 인코딩이 필요하다.
#
$email = 'email+address@gmail.com'
$intro = '잘 부탁해'
Add-Type -AssemblyName System.Web
$email = [Web.Httputility]::UrlEncode($email)
$intro = [Web.Httputility]::UrlEncode($intro)
#
# POST data를 만든다.
#
$post = 'sex=1&by=1988&bm=11&bd=11&email='+$email+'&pass=qqqqwwww&nn='+$nn+'&intro='+$intro+'&chk='+$chk
$post = [System.Text.Encoding]::Default.GetBytes($post)
#
# 위에서 설정한 정보들을 이용하여 Post 방식으로 직접 action url을 호출한다.
# post를 의미하는 헤더 = Content-Type: application/x-www-form-urlencoded
$headers = "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25"+[char]10+[char]13, "Content-Type: application/x-www-form-urlencoded"+[char]10+[char]13
$ie.Navigate2($action,0,0,$post,$headers)