rsscombine:將多個RSS源合併為一個源

banq發表於2024-07-01


以下是在本地執行服務的方法。您可能需要brew install golang先。

git clone git@github.com:chase-seibert/rsscombine.git
cd rsscombine
go mod download
go run rsscombine.go

您可以建立以下格式的本地檔案rsscombine.yml:

title: My Technical RSS Feed
link: http:<font>//wherethisfeedishosted.com/feed<i>
description: This is a personal collection of technical RSS feeds.
author_name: John Doe
author_email: john@example.com
port: 8080
cache_timeout_seconds: 3600
feeds:
  - http:
//feeds.feedburner.com/TechCrunch<i>
  - http:
//feeds.arstechnica.com/arstechnica/technology-lab<i>
  - http:
//www.reddit.com/r/technology/.rss<i>
  - http:
//rss.slashdot.org/slashdot/slashdotMainatom<i>


格式說明:

title:    RSSCOMBINE_TITLE    新 RSS 提要的標題。
link:    RSSCOMBINE_LINK    連結到新的 RSS 源。可以是網頁或源 URL。
description:   RSSCOMBINE_DESCRIPTION    您的新訂閱源的描述,顯示在 RSS 閱讀器中。
author_name:    RSSCOMBINE_AUTHOR_NAME    您的全名,顯示在 RSS 閱讀器中。
author_email:    RSSCOMBINE_AUTHOR_EMAIL    您的電子郵件顯示在 RSS 閱讀器中。
client_timeout_seconds:    RSSCOMBINE_CLIENT_TIMEOUT_SECONDS    從伺服器到各個 RSS 源的呼叫超時秒數。
feeds:        要合併的 feed 列表。無法透過環境變數指定。
feed_urls:    RSSCOMBINE_FEED_URLS    可選:用於解析 feed URL 的 URL。如果設定,則將覆蓋 feed 設定。
feed_exclude_prefixes:    RSSCOMBINE_FEED_EXCLUDE_PREFIXES    可選:要從 feed_urls 解析中排除的 URL 字首列表。
feed_limit_per_feed :   RSSCOMBINE_FEED_LIMIT_PER_FEED    可選:您想要從每個子 feed 中提取多少個專案。

訂閱源 URL
您可以在網路上建立一個公開檔案,RSS Combine 可以查詢該檔案並解析出 URL。這對於 GitHub README 檔案特別有用。

注意:檔案格式並不重要,RSS Combine 將提取它在檔案中找到的任何 URL。

例子README.md:

This is a README with some URLs.

- TechCrunch http:<font>//feeds.feedburner.com/TechCrunch<i>
- Ars Technica http:
//feeds.arstechnica.com/arstechnica/technology-lab<i>
- Reddit http:
//www.reddit.com/r/technology/.rss<i>

如果該檔案託管在 https://raw.githubusercontent.com/chase-seibert/rsscombine/master/examples/basic.md,那麼你可以透過定義 YAML 關鍵字 feeds_url 或環境變數 RSSCOMBINE_FEEDS_URL,並將該 URL 作為值,讓 RSS Combine 載入該檔案。

使用 Jsdelivr CDN 加速 Github:

https:<font>//raw.githubusercontent.com/{user}/{repo}/master/<i>

-->

https:
//cdn.jsdelivr.net/gh/{user}/{repo}/<i>


網友:
1、我一生中用過的所有 RSS 閱讀器都支援從多個源讀取。我看不出這樣做有什麼用

2、讀者必須新增每個 RSS 源。如果我作為這些源的製作者想要釋出一個組合源,這樣他們就不必做額外的工作了,該怎麼辦?或者,如果我是 RSS 源的管理員,想要釋出一個來自 100 個較小的低技術計算機新聞源的組合“低技術計算機新聞”源,該怎麼辦?

3、也許這可以用來提供聚合資訊流作為服務。它可以進一步細化,根據使用者提供或服務預定義的標準過濾內容。一個例子可能是帶有精選來源的資訊保安資訊流,也可能是與漏洞相關的內容的可選細化。
這還可以允許使用者開發/分叉聚合資訊並與社群共享。

4、有一個 footgun 具有許多類似的工具。如果您將新源新增到現有的組合 feed,則該 feed 中的所有專案將立即顯示為新專案。您通常希望源 feed 的新專案顯示在組合 feed 中,而不是同時顯示所有現有專案。

5、它可以與 RSS Proxy https://github.com/damoeb/rss-proxy配合使用,將任何網站轉換為 RSS 提要。
回覆

6、我最近必須解決完全相反的問題——從單一來源獲取大量內容,並將其分成多個提要。

7、FreshRSS 就是這樣做的。

8、我曾經需要過類似的東西,但我忘了為什麼。現在我可能只會使用 val.town 來構建它,而不是啟動我自己的 go 伺服器

相關文章