Страница 1 из 1

Получить текст из браузера

Добавлено: 03 июл 2021, 16:45
mihalpalych

Всем привет!
Слушаю музыку в Spotify в браузере. Иногда хочу скопировать название трека, чтобы добавить в вк, но на сайте ничего не выделяется.
Название трека также отображается в заголовке браузера во время воспроизведения. Возможно ли выдернуть как-нибудь название?


Re: Получить текст из браузера

Добавлено: 03 июл 2021, 17:05
Fors1k

Для Яндекс Браузера вот так:

Wake up, Neo, select all

if(!$Spotify){
$Spotify = Find-Window -Title "Spotify"
}

if($Spotify){
$song = Get-WindowText $Spotify.handle
$song = $song -replace " — Яндекс.Браузер"
$song|Set-Clipboard
}

Перед первым запуском скрипта остановить воспроизведение музыки.
Название трека будет помещаться в буфер обмена.


Re: Получить текст из браузера

Добавлено: 03 июл 2021, 17:46
mihalpalych

То что доктор прописал) спасибо! А можно сделать так, что бы скрипт все время работал и брал название трека при нажатии на какую-нибудь клавишу? И реально ли еще чтобы он сразу открывал этот трек в вк?


Re: Получить текст из браузера

Добавлено: 03 июл 2021, 18:11
Fors1k

Перед запуском скрипта поставить воспроизведение на паузу. После запуска можно включать музыку.
Вкладка со Spotify должна быть открыта, или можно вытянуть ее в отдельное окно. Окно может быть свернуто.
Трек будет открываться в вк по нажатию на левый Shift+1 .

Wake up, Neo, select all

$Spotify = $null
$Spotify = Find-Window -Title "Spotify"

Clear-KeyState -Key LShiftKey
Clear-KeyState -Key D1

while($Spotify){
$lShift = Get-KeyState -Key LShiftKey
$digit1 = Get-KeyState -Key D1

if($lShift -and $digit1){
$song = Get-WindowText $Spotify.handle
$song = $song -replace " — Яндекс.Браузер"
[Uri]$url = "https://vk.com/audio?q=$Song"
Start $url.AbsoluteUri
}
Sleep -m 300
}

Re: Получить текст из браузера

Добавлено: 06 июл 2021, 17:59
mihalpalych

Все работает, только иногда когда запускаю скрипт в вк открывается не название песни,
а вот это: GDI+ Window (Spotify.exe)


Re: Получить текст из браузера

Добавлено: 06 июл 2021, 19:01
Fors1k

У вас скрипт нашел окно десктопного приложения.
Вот так должен будет найти окно именно браузера:

Wake up, Neo, select all

$Spotify = $null
$Spotify = Find-Window -Title "Spotify" | Where-Object{(Get-WindowClassName $_.handle) -match "YandexBrowser"}

Clear-KeyState -Key LShiftKey
Clear-KeyState -Key D1

while($Spotify){
$lShift = Get-KeyState LShiftKey
$digit1 = Get-KeyState D1

if($lShift -and $digit1){
$song = Get-WindowText $Spotify.handle
$song = $song -replace " — Яндекс.Браузер"
[Uri]$url = "https://vk.com/audio?q=$Song"
Start $url.AbsoluteUri
}
Sleep 1
}

Re: Получить текст из браузера

Добавлено: 11 июл 2021, 15:42
mihalpalych

Во, теперь все отлично, спасибо!!