eddiezato
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Делал скриптик для человека на основе этого для получения ссылок на оффлайн-установщики Chrome (распаковываются 7zip). Кидаю сюда, вдруг кому пригодится. get_chrome.ps1: Код: param ( [Alias('x86')][switch]$ArchX86 ) if ($ArchX86) { $Arch = 'x86' } else { $Arch = 'x64' } $request_json = @" { "request": { "protocol": "3.1", "dedup": "cr", "ismachine": 1, "hw": { "physmemory": "16", "sse3": "1", "avx": "1" }, "os": { "platform": "win", "version": "10.0.22000", "arch": "$Arch" }, "app": [{ "appid": "{8A69D345-D564-463C-AFF1-A69D9E530F96}", "updatecheck": {}}, { "appid": "{8237E44A-0054-442C-B6B6-EA0509993955}", "updatecheck": {}}, { "appid": "{401C381F-E0DE-4B85-8BD8-3F3F14FBDA57}", "updatecheck": {}}, { "appid": "{4EA16AC7-FD5A-47C3-875B-DBF4A2008C20}", "ap": "$Arch-canary", "updatecheck": {}}]} } "@ try { $response_json = (Invoke-RestMethod -Method Post -Uri 'https://tools.google.com/service/update2/json' -Body $request_json).Replace(")]}'`n", "") | ConvertFrom-Json } catch { throw 'Something went wrong.' } if ($null -ne $response_json) { $apps = @() $response_json.response.app | ForEach-Object { $apps += [PSCustomObject]@{ Name = $_.cohortname Version = $_.updatecheck.manifest.version Size_in_MB = ($_.updatecheck.manifest.packages.package.size / 1MB).ToString('#.##') Uri = ($_.updatecheck.urls.url | Where-Object { $_.codebase -like 'https://dl.google.com*' }).codebase + $_.updatecheck.manifest.packages.package.name } } $apps | Format-Table } | Из CMD (Win 10/11) стартуем так: Код: В некоторых случаях может отдавать разные версии в одном канале при каждом запросе. Это особенность Гугля. Объясняется тем, что некоторые сборки распространяются, например, для 50% аудитории. В логе выше в стабильном канале сейчас может отдать как "Control", так и "M121 Rollout". | Всего записей: 1692 | Зарегистр. 26-02-2011 | Отправлено: 10:55 15-02-2024 | Исправлено: eddiezato, 10:58 15-02-2024 |
|