<div class="w-btn" ng-click="vm.callbacks.compareAll();" ng-if="vm.folderData.projects.length > 0 && vm.noneSelectedProjects" tabindex="0"><i class="glyphicon glyphicon-transfer btn-icon"></i> Report from all</div>
Мне нужно использовать Powershell, чтобы щелкнуть эту кнопку. На этой странице есть несколько разделов с class= "w-btn", но только один с ng-кликом, в котором есть Сравнить все в нем.
когда эта кнопка нажата, она изменит другой тег на странице, который выглядит следующим образом
<a href="/data/project/export/projects-tasks?projectIds[]=103473&projectIds[]=103474&projectIds[]=106186&projectIds[]=108395&projectIds[]=110653&projectIds[]=110657" target="_self" class="inline-btn pull-right" ng-if="vm.projects.length > 0">
первая кнопка изменяет, что href для проектов по мере их добавления. Я должен написать этот script, чтобы щелкнуть первую кнопку, а затем использовать полученный href как часть ссылки в моем wget
До сих пор мне не удалось заставить что-нибудь работать
$Link = 'https://url.com/folder/2880'
$html = Invoke-WebRequest -Uri $Link -UseDefaultCredentials
$btnclick = $html.getElementsByTagName("div") | Where-object{$_.Name -like 'ng-click="vm.callbacks.compareAll();"' }
когда я затем сделаю запись в консоль, чтобы узнать, что такое $btnclick, я получаю сообщение об ошибке:
Method invocation failed because [Microsoft.PowerShell.Commands.HtmlWebResponseObject] does not contain a method named 'getElementsByTagName'
В конце концов, я думаю, что тогда мне бы понравилось $btnclick.Click()
и сделать еще один getElement
на href
, чтобы я мог вытащить
/data/project/export/projects-tasks?projectIds[]=103473&projectIds[]=103474&projectIds[]=106186&projectIds[]=108395&projectIds[]=110653&projectIds[]=110657
.
Любая помощь в этом достигается. Обзор высокого уровня - мне нужно щелкнуть кнопку angular js с веб-страницы, а затем извлечь часть URL-адреса, которая будет использоваться в wget из полученного тега href.