Есть ли способ использовать уже полученные файлы cookie из существующего веб-сеанса Chrome в Powershell для SessionVariable?
Я знаю поля для SessionVariable:
Headers : {}
Cookies : System.Net.CookieContainer
UseDefaultCredentials : False
Credentials :
Certificates :
UserAgent : Mozilla/5.0 (Windows NT; Windows NT 10.0; en-US)
WindowsPowerShell/5.1.17134.407
Proxy :
MaximumRedirection : -1
Могу ли ясделать что-то, чтобы установить эти значения изначально для веб-запроса, например:Нужны ли мне конкретные заголовки для сеанса, когда это может быть несколько / разные типы запросов?
$ua = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"
$Params = @{
Headers = $headers
Cookies = $cookies
UseDefaultCredentials = "False"
Credentials = $creds
UserAgent = $ua
Proxy = ""
MaximumRedirection = "-1"
}
Если что-то подобное можно сделать, я также немного запутался, как вводить файлы cookie.Я нашел это из Получение файлов cookie с помощью PowerShell :
$webrequest = Invoke-WebRequest -Uri $url -SessionVariable websession
$cookies = $websession.Cookies.GetCookies($url)
# Here, you can output all of $cookies, or you can go through them one by one.
foreach ($cookie in $cookies) {
# You can get cookie specifics, or just use $cookie
# This gets each cookie's name and value
Write-Host "$($cookie.name) = $($cookie.value)"
}
У меня есть экспорт файлов cookie в формате JSON с любого сайта в этом формате, но я также могу сократить его до "name "=" value ", если это то, что нужно.
[
{
"domain": "",
"expirationDate": "",
"hostOnly": "",
"httpOnly": "",
"name": "",
"path": "",
"sameSite": "",
"secure": "",
"session": "",
"storeId": "",
"value": "",
"id": ""
},
{
"domain": "",
etc...
}
]
Я не знал, как обозначить каждый раздел как $ cookie в $ cookies, или как добавить их по-другому, так какэто будет не URL / WebRequest, а JSON.
Спасибо за любую помощь!