aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md5
-rw-r--r--main.go5
2 files changed, 10 insertions, 0 deletions
diff --git a/README.md b/README.md
index 1f1300b..e16f5e8 100644
--- a/README.md
+++ b/README.md
@@ -30,6 +30,11 @@ $ radiorus-rss [опции]
```
путь, где будет создан файл с RSS-лентой. По умолчанию — текущая директория.
+```
+-smotrim
+```
+использовать сайт `smotrim.ru` напрямую, без обращения к `www.radiorus.ru`: с апреля 2022 года страницы передач автоматически перенаправляются на `smotrim.ru`, и эта опция позволяет использовать программу в случае, если доступа к сайту `www.radiorus.ru` нет (с февраля 2022 года сайт недоступен из Европы).
+
## Применение
Один из возможных сценариев использования — загрузить скомпилированное приложение на сервер и настроить автоматическое создание RSS-ленты через `cron` (промежутки подобрать сообразно с частотой выхода передачи). Именно так сделана [RSS-лента для передачи «Аэростат»](http://evgenykuznetsov.org/feeds/radiorus-57083.rss) на моём сайте.
diff --git a/main.go b/main.go
index 24cdcb6..0aeafab 100644
--- a/main.go
+++ b/main.go
@@ -51,6 +51,7 @@ var (
episodeUrlRe = regexp.MustCompile(`<a href="/brand/(.+?)?" class="title`)
outputPath, programNumber string
+ smotrim bool
errBadEpisode = fmt.Errorf("bad episode")
errCantParse = fmt.Errorf("could not parse page")
@@ -61,9 +62,13 @@ var (
func main() {
flag.StringVar(&outputPath, "path", "./", "path to put resulting RSS file in")
flag.StringVar(&programNumber, "brand", "57083", "brand number (defaults to Aerostat)")
+ flag.BoolVar(&smotrim, "smotrim", false, "use smotrim.ru directly")
flag.Parse()
url := "https://www.radiorus.ru/brand/" + programNumber + "/episodes"
+ if smotrim {
+ url = "https://smotrim.ru/brand/" + programNumber
+ }
feed := processURL(url)