调用Web请求令牌

时间:2019-03-07 23:29:29

标签: powershell web-scraping amazon powershell-v5.1 invoke-webrequest

我使用可用的API,但是发现我不断遇到我想从没有站点的站点获取的东西,所以我想我将尝试学习如何通过invoke-webrequest做到这一点。 / p>

我设法从过去我们工作的一些旧站点中提取了基本信息,但是我从未真正掌握过,所以我想尝试一些具有登录页面的站点以进一步我的理解。但是,到目前为止,我还没有设法解决其中的任何一个问题,所以我认为我会选择一个公共网站(Amazon),看看能否获得帮助,以了解这些步骤。

我将做一些我认为很简单的事情,连接到amazon.com.au,登录并获取我已阅读的书籍清单。

按照过去的操作,我首先连接到URL并将其存储在会话变量中。

除了这次我填写用户名和密码字段

但是尽管我得到200 OK的答复,但最终还是回到了登录屏幕。

到目前为止我所拥有的。

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$Url = "amazon.com.au/myk"
$cred = Get-Credential
$login = Invoke-WebRequest -Uri $Url -SessionVariable Amazon
$login.Forms[0].Fields.ap_email = $cred.UserName
$login.Forms[0].Fields.ap_password = $cred.GetNetworkCredential().Password

    $Result = Invoke-WebRequest -Uri $Url -SessionVariable Amazon 
    $Result

我真的对此一无所知,所以当我输入密码并点击Submit时,我可能实际上并不了解该网站的工作。

有人可以指出我做错了什么吗?我认为也许我需要传递令牌,但是不确定,因为令牌已存储在表单中。我的另一种想法是,可能需要使用一个操作字段(https://www.amazon.com.au/ap/signin),但是当我将其放入浏览器时,它转到的是“查找内容页面,而不是实际的登录页面。” / p>

0 个答案:

没有答案