目次
概要
起動しているブラウザのクッキー情報を削除するメソッドになります。Name指定して削除する方法と全削除する方法があります。
PowerShellでSeleniumモジュールを利用する方法
Seleniumは多言語で利用可能なツールです。PowerShell専用でSeleniumのクラスは用意されていませんが、C#用に.NETのSeleniumは用意されています。公式には例文も無い...
コマンド(Commond)
Remove-SeCookie
代替コマンド(Alias)
無し
構文(Syntax)
Remove-SeCookie -Name <string> [-Target <IWebDriver>] [<CommonParameters>]
Remove-SeCookie -DeleteAllCookies [-Target <IWebDriver>] [<CommonParameters>]
オプション
Name | 引数型 | 解説 | Short Example |
---|---|---|---|
Target | IWebDriver | 対象ドライバーの指定 | Remove-SeCookie -Target $Driver -Name $cookies[0].Name |
Name | string | クッキー名を指定して削除 | Remove-SeCookie -Target $Driver -Name $cookies[0].Name |
DeleteAllCookies | クッキー情報を全て削除 | Remove-SeCookie -Target $Driver -DeleteAllCookies | |
CommonParameters | 共通パラメータ |
※ShortExampleは、動作確認ができたコードを記載しています。
Example
$Driver = Start-SeChrome -Quiet
Open-SeUrl https://programan.org/ -Target $Driver
$cookies = Get-SeCookie -Target $Driver
$cookies_Count = $cookies.Count
Write-Host "クッキー情報情報数(削除前):$cookies_Count"
Remove-SeCookie -Target $Driver -Name $cookies[0].Name
$cookies = Get-SeCookie -Target $Driver
$cookies_Count = $cookies.Count
Write-Host "クッキー情報情報数(1個削除):$cookies_Count"
Remove-SeCookie -Target $Driver -DeleteAllCookies
$cookies = Get-SeCookie -Target $Driver
$cookies_Count = $cookies.Count
Write-Host "クッキー情報情報数(全削除):$cookies_Count"
Start-Sleep -Seconds 2
Stop-SeDriver $Driver
Module
Remove-SeCookieのSelenium-Module構文を以下に掲載します。
function Remove-SeCookie {
param(
[Parameter(Mandatory = $false, ValueFromPipeline = $true)]
[Alias('Driver')]
[OpenQA.Selenium.IWebDriver]
$Target = $Global:SeDriver,
[Parameter(Mandatory = $true, ParameterSetName = 'DeleteAllCookies')]
[Alias('Purge')]
[switch]$DeleteAllCookies,
[Parameter(Mandatory = $true, ParameterSetName = 'NamedCookie')]
[string]$Name
)
if ($DeleteAllCookies) {
$Target.Manage().Cookies.DeleteAllCookies()
}
else {
$Target.Manage().Cookies.DeleteCookieNamed($Name)
}
}