Skip to content

Instantly share code, notes, and snippets.

@AlexxIT
Last active February 25, 2025 22:56
Show Gist options
  • Save AlexxIT/b2a435adb30b9bf91022fccc95267b9b to your computer and use it in GitHub Desktop.
Save AlexxIT/b2a435adb30b9bf91022fccc95267b9b to your computer and use it in GitHub Desktop.
Список радиостанций для колонок Яндекса
input_select:
radio:
name: Радио
options: ['-']
icon: mdi:radio
python_script: # https://github.com/AlexxIT/PythonScriptsPro
automation:
trigger:
platform: homeassistant
event: start
action:
service: python_script.exec
data:
source: |
import requests
import re
r = requests.get('https://yandex.ru/support/station/radio.html')
radios = re.findall(r'headers="radio__table_nfk_ylr_f3b__entry__1">(.+?)</td>', r.text)
hass.services.call('input_select', 'set_options', {
'entity_id': 'input_select.radio',
'options': sorted(set(radios))
})
script:
play_radio:
alias: Включи радио
sequence:
- service: media_player.play_media
entity_id: media_player.yandex_station_mini # поменяйте на вашу станцию
data_template:
media_content_id: Включи радио {{ states("input_select.radio") }}
media_content_type: command
@LA-chel
Copy link

LA-chel commented Feb 5, 2021

05.02.21. Автоматизация перестала работать. Список радиостанций не выводится..

@AlexxIT
Copy link
Author

AlexxIT commented Feb 26, 2021

У Яндекса немного поменялся сайт, поправил

@AlekZone
Copy link

что то не пойму как добавить этот скрипт в HA?

@MicroSur
Copy link

MicroSur commented Aug 10, 2022

radios = re.findall(r'headers=\"radio__table_nfk_ylr_f3b__entry__1\">(.+?)', r.text)

@xmaxzzz
Copy link

xmaxzzz commented Feb 19, 2023

При трансляции звука с колонки на *cast устройства радио не транслируется (Алиса включи радио), с музыкой проблем нет

@MicroSur
Copy link

r = requests.get('https://wiki.yaboard.com/w/Список_радиостанций_для_умных_колонок')
radios = re.findall(r'"width:30%; text-align:center">(.+?)', r.text)

@vvv279
Copy link

vvv279 commented May 1, 2023

Добрый день.
Автоматизация перестала работать. Список радиостанций не выводится.

@AlexxIT
Copy link
Author

AlexxIT commented May 1, 2023

Говорят Яндекс добавили капчу

@vvv279
Copy link

vvv279 commented May 1, 2023

Говорят Яндекс добавили капчу

Ясно, спасибо.

@fess1100
Copy link

fess1100 commented May 6, 2023

r = requests.get('https://wiki.yaboard.com/w/Список_радиостанций_для_умных_колонок')
radios = re.findall(r'"width:30%; text-align:center">(.+?)', r.text)

Подскажите, этот способ должен работать? На yandex.ru проблема в captcha, но на wiki.yaboard.com вроде как ее нет. Просто у меня с таким кодом в списке высвечивается символ "<"

@MicroSur
Copy link

MicroSur commented May 6, 2023

Подскажите, этот способ должен работать?

Сейчас перегрузил хасс, работает. Склоняюсь тупо забить список вручную, но пока лень.

@vadim-gentoomen
Copy link

vadim-gentoomen commented Dec 24, 2024

У меня работает так:

r = requests.get('https://wiki.yaboard.com/w/Список_радиостанций_для_умных_колонок')
radios = re.findall(r'"width:30%; text-align:center"><b>(.+?)</b>', r.text)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment