1

Powershell noob here,看起来这应该很容易,但我无法弄清楚。我试图让我的脚本点击经纪公司主页上的登录按钮:

$login = Invoke-Webrequest -uri http://www.foliofn.com -sessionvariable fol
$login.links

第三个链接是登录按钮,点击后会弹出登录表单:

innerHTML : <I class=icon-lock></I>Login 
innerText : Login 
outerHTML : <A class="btn btn-small headerloginlink" href="/servlets/ProcessAction?identifier=loginFormEntry&amp;click1=Login"><I class=icon-lock></I>Login </A>
outerText : Login 
tagName   : A
class     : btn btn-small headerloginlink
href      : /servlets/ProcessAction?identifier=loginFormEntry&amp;click1=Login

如何使用 invoke-webrequest 方法“单击”它?我是否需要以某种方式发布(尽管这不是表格,只是一个链接)。

我知道我可以使用 ie.document.getelementsbyTagName 来选择这个元素,然后使用 click(),但是我不知道如何在不使用 DOM 的情况下在 V3 中做到这一点(如果这是正确的说法的话)。

4

1 回答 1

1

您可以尝试模块AutoBrowse。它包含使这种与 IE 的交互更具脚本性的命令。这是登录 xbox live 的示例。

# Autobrowse can make automatically logging into a site simple and easy.  
# This simple pipeline logs someone into xbox (assuming $liveId and $password are set)
$ie = Open-Browser -Url http://xbox.com -Visible|
    Invoke-BrowserControl -Name RpsSignInLink -Click |
    Set-BrowserControl -Name login -Value $liveId | 
    Set-BrowserControl -Name passwd -Value $password | 
    Invoke-BrowserControl -Name SI -Click 

# Once we're in, let's check out recent activity    
$ie | Set-BrowserLocation -Url http://live.xbox.com/en-US/Activity
于 2013-09-26T06:25:40.643 回答