как получить доступ к учетной записи neteller с помощью Invoke-WebRequest - PullRequest
0 голосов
/ 25 апреля 2019

Я хотел бы получить доступ к моей учетной записи neteller через Invoke-WebRequest.

Я нашел поля, которые необходимо заполнить

<input type="password" name="password" id="form-login-password" maxlength="32" placeholder="Password" autocomplete="off" pattern=".*" required="" value="Welcome 123">

Я пробовал этот код вещи.

$content=Get-Content "$home\Downloads\test log\NETELLER » Signin.html"
$qw=Invoke-WebRequest https://member.neteller.com -Method Post -Body $content -SessionVariable test

с паролем и логином внутри файла, но та же проблема.

Я хотел бы получить страницу после входа в систему.

1 Ответ

0 голосов
/ 27 апреля 2019

Переход от раздела комментариев, чтобы быть более конкретным для ОП.

Что касается ваших комментариев ...

Как я могу получить событие кнопки и как его использовать?

Я нашел это

input type = "submit" name = "btn-login" class = "button radius" value = "Войти" id = "btn-login"

Есть несколько способов, но опять же, сайт, как он закодирован, фактически предотвращает некоторые действия по автоматизации. Итак, я хочу сказать, что они не хотят, чтобы люди использовали автоматизацию на / на своем сайте.

Нажатие кнопок, ссылок и т. П. Требует, чтобы пользовательский интерфейс браузера был виден. Вы, кажется, хотите сделать это невидимым, но я могу ошибаться.

Учитывая все обстоятельства, есть несколько способов получить щелчок. Полностью зависит от дизайнеров сайта и от того, что они сделали доступными для работы. Вот несколько примеров с сайтов, с которыми мне приходилось иметь дело, с одно- и многостраничными сайтами / сайтами, которые позволяли автоматизировать.

# Starting here...
$ie.Document.getElementsByName('commit').Item().Click();

# Or
$ie.document.IHTMLDocument3_getElementsByTagName("button") | 
ForEach-Object { $_.Click() }

# Or
($ie.Document.IHTMLDocument3_getElementsByTagName('button') | 
Where-Object innerText -eq 'SIGN IN').Click()

# Or
($ie.document.getElementById('submitButton') | 
select -first 1).click()

# Or ...
$Link=$ie.Document.getElementsByTagName("input") | 
where-object {$_.type -eq "button"}
$Link.click()

# Or ...
$Submit = $ie.document.getElementsByTagName('INPUT') | 
Where-Object {$($_.Value) -match 'Zaloguj'}
$Submit.click()

# Or
$ie.Document.getElementById("next").Click()

# Or
$SubmitButton=$Doc.IHTMLDocument3_getElementById('button') | 
Where-Object {$_.class -eq 'btn btn-primary'}
$SubmitButton.Click()

# Or
Invoke-WebRequest ("https://portal.concordfax.com/Account/LogOn" + 
$R.ParsedHtml.getElementsByClassName("blueButton login").click

Вот полный пример того, что я имею в виду.

Очистите сайт для получения информации об объекте.

$url = 'https://pwpush.com'
($FormElements = Invoke-WebRequest -Uri $url -SessionVariable fe)  
($Form = $FormElements.Forms[0]) | Format-List -Force
$Form | Get-Member
$Form.Fields

Используйте информацию на сайте

$IE = New-Object -ComObject "InternetExplorer.Application"

$FormElementsequestURI = "https://pwpush.com"
$Password = "password_payload"
$SubmitButton = "submit"

$IE.Visible = $true
$IE.Silent = $true
$IE.Navigate($FormElementsequestURI)
While ($IE.Busy) {
    Start-Sleep -Milliseconds 100
}

$Doc = $IE.Document
$Doc.getElementsByTagName("input") | ForEach-Object {
    if ($_.id -ne $null){
        if ($_.id.contains($SubmitButton)) {$SubmitButton = $_}
        if ($_.id.contains($Password)) {$Password = $_}
    }
}

$Password.value = "1234"
$SubmitButton.click()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...