Tiny Tiny RSS(TT-RSS) で,Feedly のように,フィードにサムネイル画像を表示させるための設定方法.

Pocket

 

(2019-08-05 追記: コードを少し修正しました.https://noike.info/wp/knoike/2019/08/05/82017/

 

Tiny Tiny RSS(TT-RSS) で,Feedly のように,フィードにサムネイル画像を表示させるための設定方法.

 

 

 

Feedly
Feedly.png


Tiny Tiny RSS(TT-RSS) のデフォルト
TT-RSS_default.png


Tiny Tiny RSS(TT-RSS) に,この記事に書いた設定を施した後
TT-RSS_thumbnail_og_description.png


FeedIron に書くコード:

{
    "tbs.co.jp|gigazine.net": {
        "name": "Generate Thumbnail from OG:image",
        "type": "xpath",
        "xpath": [
            "\/\/meta[@property='og:image'][last()]\/@content",
            "\/\/meta[@property='og:description']\/@content"
        ],
        "start_element": "<img src=",
        "join_element": ">"
    }
}

[テーマ] の [カスタマイズ] に追加する CSS:

.content-inner img {
    width: 240px;
    float:left;
    margin-right:1em;
    margin-bottom:1em;
}

 

 

Feedly では,RSS フィード自体にサムネイル画像URL が含まれていなくても,フィードの記事 URL 先にあるサムネイル画像を表示してくれます.
しかし,Tiny Tiny RSS(TT-RSS) のデフォルトの状態では,フィードにサムネイル画像URL がないと表示してくれません.
フィードにある場合は表示してくれるので,TT-RSS の設定次第で表示してくれるようになるのではないかと試行錯誤してみましたが,TT-RSS 自体の設定だけではどうにもならないようです.

そこで,「FeedIron」というプラグインを利用し,自分なりに工夫してサムネイル画像が表示されるように設定してみました.
行っていることは,「フィードの記事 URL 先のページから og:image 情報を取り出し,TT-RSS のフィード表示に埋め込む」という処理です.
フィードの記事 URL 先の HTML 構成に依存する方法なので,よい解決方法ではないかもしれませんが,上でサンプル画像を挙げた「TBS NEWS」や,「GIGAZINE」などではうまくいきました.
もっと汎用的なよい解決方法があるのかもしれません.そのときは,私にも教えてくださると助かります.

 

 

「FeedIron(Evolution of ttrss_plugin-af_feedmod)」
https://github.com/feediron/ttrss_plugin-feediron

 

 

まず,FeedIron プラグインをインストールします.
FeedIron プラグインのインストールは,「Installation」のところに書いてあるとおりです.

1.
/(TT-RSS を設置したディレクトリ)/tt-rss/plugins.local/feediron/

に FeedIron 一式を置く.

2.
FeedIron 一式の owner 情報を,httpd(Apache) を動かしているユーザーとグループ(私のサーバーでは,apache:apache)に合わせる.

# chown -R apache:apache  /(TT-RSS を設置したディレクトリ)/tt-rss/plugins.local/feediron/

3.
TT-RSS の [設定] の [プラグイン] の [ユーザープラグイン] のところで,[feediron] を有効化する(チェックを入れる)

FeedIron プラグインをインストールすると,TT-RSS の [設定] 画面で,[システム]タブの右に [FeedIron]タブも表示されるようになります.
FeedIron でのフィード加工の設定は,この [FeedIron]タブで行います.

 

 

FeedIron プラグインをインストールしたら,次は,

1.
FeedIron でフィード内容を加工する設定

2.
フィードの表示を見やすくする CSS 設定

を行います.1 の FeedIron の設定だけですべてを済ませたかったのですが,どう試行錯誤してもできなかったので,FeedIron 設定と CSS 設定の 2段構えにしました.

 

 

まず,「FeedIron でフィード内容を加工する設定」を行います.
次のコードを,[設定] の [FeedIron]タブの [Configuration]タブの [Configuration] 欄に書き,[保存]ボタンを押します.
このコードでは,「TBS NEWS」と「GIGAZINE」のフィードで表示されなかったサムネイル画像が表示されるように,tbs.co.jp と gigazine.net をドメインとして指定しています.

{
    "tbs.co.jp|gigazine.net": {
        "name": "Generate Thumbnail from OG:image",
        "type": "xpath",
        "xpath": [
            "\/\/meta[@property='og:image'][last()]\/@content",
            "\/\/meta[@property='og:description']\/@content"
        ],
        "start_element": "<img src=",
        "join_element": ">"
    }
}

 

 

次に,「フィードの表示を見やすくする CSS 設定」を追加します.
次の CSS を,[設定] の [設定]タブの [テーマ]のところにある [カスタマイズ]ボタンを押して現れる [スタイルシートのカスタマイズ]ウィンドウで追加し,[保存]ボタンを押します.

この CSS設定が必要なのは,FeedIron に追加したコードだけだと TT-RSS でのフィード表示がくずれて見苦しくなることが多いからです.
また,FeedIron のコードに CSS を埋め込まずに別途 CSS 設定を追加しているのは,FeedIron のコードに CSS を埋め込んでおいても,CSS だけは TT-RSS のどこかの処理で除去されてしまってフィード表示に反映されなかったからです.

.content-inner img {
    width: 240px;
    float:left;
    margin-right:1em;
    margin-bottom:1em;
}

 

 

これで,TT-RSS でも,Feedly のようにサムネイル画像が表示されるようになりました.

FeedIron を利用した TT-RSS でのサムネイル画像つきフィード表示(og:description 概要文)
TT-RSS_thumbnail_og_description.png


 

 

もし,「TBS NEWS」のフィードに表示される概要文が,Feedly のときと同様に短い文で表示されたほうがよい場合は,概要文を og:description からではなく article から作るとよいようです.
その場合の FeedIron の [Configuration] 欄に書くコードは,次のとおりです.

{
    "tbs.co.jp": {
        "type": "xpath",
        "xpath": [
            "\/\/meta[@property='og:image']\/@content",
            "\/article\/div\/p"
        ],
        "start_element": "<img src=",
        "join_element": ">"
    },
    "gigazine.net": {
        "name": "Generate Thumbnail from OG:image",
        "type": "xpath",
        "xpath": [
            "\/\/meta[@property='og:image'][last()]\/@content",
            "\/\/meta[@property='og:description']\/@content"
        ],
        "start_element": "<img src=",
        "join_element": ">"
    }
}
FeedIron を利用した TT-RSS でのサムネイル画像つきフィード表示(article 概要文)
TT-RSS_thumbnail_article_div.png


あとは,フィードにサムネイル画像が表示されないサイトに気づいたときに,そのサイトのドメインを FeedIron のコードに追加したり,そのサイト専用の処理を書いたりしていくだけです.

ちょっと自分の失敗談を書いておくと,「気づいたら追加する」というコード追加の手間を惜しんで,なるべく多くのサイトでこのコードが適用されるように,

“tbs.co.jp|gigazine.net”

のところを,

“.jp|.net|.com|.org|.biz|.info”

と書いておいたら,フィード表示がくずれてしまうサイトが続出してしまいました.
このコードは汎用的ではなさそうです.
着々とドメインを追加する方針のほうが安全そうです.
また,上で「TBS NEWS」と「GIGAZINE」のコードを書き分けたように,ときにはサイトごとに異なるコードを書く必要があると思います.

 

 

もし,もっとよい解決方法がありましたら,私にも教えてくださると助かります.
正直に言って,この解決方法は面倒で,ちょっとばかばかしいなぁとも思っています… .

 

 

 

 

==

 

2019年5月9日
「Tiny Tiny RSS(TT-RSS)」を自分のサーバーで稼働させはじめました.Feed の更新は,cron ではなく,systemd から起動させたデーモンで行うようにしました.
https://noike.info/wp/knoike/2019/05/09/81594/

 

2019年5月9日
常用する RSSリーダーを,「Feedly」から「Tiny Tiny RSS(TT-RSS)」に移行することにしました.自宅サーバー noike.info 下で,自分で稼働させて使用します.
https://noike.info/wp/knoike/2019/05/09/81587/

 

2019年5月9日
Feedly に登録してある RSSフィードすべてを OPML エクスポートする方法.無料プランのままでもできたのですね.
https://noike.info/wp/knoike/2019/05/09/81565/

 

 

 

Pocket

「Tiny Tiny RSS(TT-RSS)」を自分のサーバーで稼働させはじめました.Feed の更新は,cron ではなく,systemd から起動させたデーモンで行うようにしました.

Pocket

 

「Tiny Tiny RSS(TT-RSS)」を自分のサーバーで稼働させはじめました.
OS は Scientific Linux 7.6(CentOS 7.6 のようなモノ),httpd は Apache の 2.4系,データベースシステムは MariaDB(MySQL 互換 DB)です.

設置方法は,ちょっと Web を検索すると多くの日本語ブログ記事での解説が見つかりますので,それらが参考になります.
ここでは,それらには書かれていない,

o SecuringCacheDirectories の設定

o Feed の更新を,cron ではなく,systemd から起動させたデーモンで行う設定

を,自分ためのメモとして書いておきます.

 

まず,「SecuringCacheDirectories の設定」ですが,これはやっておいたほうがよさそうです.

「SecuringCacheDirectories – Tiny Tiny RSS」
https://git.tt-rss.org/fox/tt-rss/wiki/SecuringCacheDirectories

 

/etc/httpd/conf.d/ttrss.conf

というファイルを新規に作成して,

<Directory /(TT-RSS を設置したディレクトリ)/tt-rss/cache>
    Require all denied
</Directory>

<Directory /(TT-RSS を設置したディレクトリ)/tt-rss>
    <Files "config.php">
        Require all denied
    </Files>
</Directory>

と書いておけばよいようです.

# systemctl restart httpd

で httpd(Apache) を再起動すると,設定内容が反映されます.

 

 

次に,「Feed の更新を,cron ではなく,systemd から起動させたデーモンで行う設定」です.

cron で行う設定のほうが簡単だし,デーモンで行うほうがよい理由はあんまりないのですが,


# systemctl stop ttrss_backend

というふうにコマンドひとつで簡単に Feed 更新処理を止められるので,TT-RSS 自体のアップデートやバックアップが,手軽に,そして,確実にできる.

というのがあるのではないかと思います.

ということで,TT-RSS の Feed 更新デーモンを systemd から起動させる設定をします.

「UpdatingFeeds – Tiny Tiny RSS」
https://git.tt-rss.org/fox/tt-rss/wiki/UpdatingFeeds

に書いてあることを参考にして,

/usr/lib/systemd/system/ttrss_backend.service

というファイルを新規に作成して,

[Unit]
Description="Tiny Tiny RSS feeds update daemon"
After=network.target mariadb.service

[Service]
User=apache
ExecStart=/(TT-RSS を設置したディレクトリ)/tt-rss/update_daemon2.php

[Install]
WantedBy=multi-user.target

と書きます.
私のところではデータベースシステムとして MariaDB が稼働しているのでこのように書いていますが,MariaDB ではなく MySQL や PostgreSQL が稼働している場合は,After 項のところを,

MySQL の場合:
After=network.target mysql.service

PostgreSQL の場合:
After=network.target postgresql.service

などと書きます.
稼働させていない *.service を After= に書いてしまうと,ttrss_backend.service が起動しなくなってしまうので注意が必要です.

それから,私のところの httpd(Apache) は,www-data ユーザーではなく,apache ユーザーで動いているので,

User=apache

と書いていますが,ここも,httpd の実行状況に合わせて書きます.

 

/usr/lib/systemd/system/ttrss_backend.service

を適切に書いたら,

# systemctl start ttrss_backend
# systemctl status ttrss_backend

として Feed 更新デーモンを起動し,設置した TT-RSS にログインして,登録してある RSS の Feed が時間経過とともに着々と正常に更新されていくことを確認します.
このとき,Feed 更新デーモンの稼動ログが役に立つかもしれません.
Feed 更新デーモンの稼働ログは,

# journalctl -u ttrss_backend

で見ることができます.

Feed 更新が正常に行われることが確認できたら,OS起動時に Feed 更新デーモンが自動的に起動するように,

# systemctl enable ttrss_backend

として設定しておきます.

 

 

このようにして自分のサーバーに設置した「Tiny Tiny RSS(TT-RSS)」ですが,いまのところ,何も問題なく稼働しています.快調です.
Feedly で登録していた RSS は,OPML ファイル経由で,そのほとんどを移行できました.

 

「Feedly に登録してある RSSフィードすべてを OPML エクスポートする方法.無料プランのままでもできたのですね. – とり茶」
https://noike.info/wp/knoike/2019/05/09/81565/

 

移行できなかった RSS もだいぶありましたが,そのほとんどが「サイト自体がなくなっていた」,「サイトが RSS を配信するのをやめていた」という理由でした.
ごく一部は,なんらかの理由で移行に失敗していたようです.これは,あとで時間ができたら見ておくことにします.
とりあえず,自分が普段よくチェックしているサイトについては,正常に移行できました.
常用する RSS リーダーを,Feedly から TT-RSS に移行できそうです.

 

 

 

 

 

==

 

2019年5月9日
常用する RSSリーダーを,「Feedly」から「Tiny Tiny RSS(TT-RSS)」に移行することにしました.自宅サーバー noike.info 下で,自分で稼働させて使用します.
https://noike.info/wp/knoike/2019/05/09/81587/

 

2019年5月9日
Feedly に登録してある RSSフィードすべてを OPML エクスポートする方法.無料プランのままでもできたのですね.
https://noike.info/wp/knoike/2019/05/09/81565/

 

 

 

Pocket

常用する RSSリーダーを,「Feedly」から「Tiny Tiny RSS(TT-RSS)」に移行することにしました.自宅サーバー noike.info 下で,自分で稼働させて使用します.

Pocket

 

「Tiny Tiny RSS」
https://tt-rss.org/

 

「Home – Tiny Tiny RSS」
https://git.tt-rss.org/fox/tt-rss/wiki

 

「Welcome to Feedly」
https://feedly.com/i/welcome

 

常用する RSSリーダーを,「Feedly」から「Tiny Tiny RSS(TT-RSS)」に移行することにしました.
自宅サーバー noike.info 下で,自分で稼働させて使用します.

 

長い年数の間にいろいろとあったものの,とりたてて大きな不満はなかったので Feedly を使用し続けていました.
Google Reader 終了に伴う,いわゆる「移行組」の一人です.
私は RSSリーダーにお金をかけられるほど裕福ではないので,申し訳ないのですが無料プランでありがたく使わせていただいていました.

 

先日,ふと,取得済みの未読記事タイトルが Feedly 内からなくなっていることに気づきました.
気づいた最初の頃はあまり気にしていなかったのですが,古いものからどんどんと消えていくので,かなり気になってきました.
「あとで読もう」とメモ代わりにしておいた情報がどんどんと消えていくのは,私としてはかなりしんどいです.
少し調べてみた限りでは,どうも,Feedly 側の制限のようで,いつの間にか徐々に制限をキツくしていっていたようです.
無料プランだけでなく,有料プランでも結構な制限がありました.
そこで,他のRSSリーダーサービスへの移行を検討し始めました.

 

Web を検索してみると,Feedly を使っていた人は,Inoreader に移行していることが多いような印象でした.
そもそも,Google Reader が終了してしまったときに,Inoreader に移行した人も多いようです.

 

そこで,私も Inoreader に移行してみようかと検討し始めたのですが,Inoreader も,比較的最近に,無料プランや有料プランの制限を厳しくし始めたようです.

 

「Official Announcement: Inoreader New Plans and Pricing Updates in February 2019 – Inoreader blog」
https://blog.inoreader.com/2019/02/official-announcement-inoreader-new-plans-and-pricing-updates-in-february-2019.html

 

「Inoreaderも無料プランへの制限が厳しくなった : やさぐれ野郎  (Part2)」
http://blog.livedoor.jp/mshimohi/archives/2211660.html

 

「Inoreader の無料版の制限が強化されてた」
https://blog.cles.jp/item/10847

 

どこの RSSリーダーサービスも,収益上げや維持に苦労しているようです.

 

Inoreader 以外の移行先を探していると,「Tiny Tiny RSS」というオープンソースの RSSリーダーを自分で稼働させて使う記事が結構な数で見つかりました.

 

「InoreaderユーザーがRSSリーダーを「Tiny Tiny RSS」に乗り換えた | MYTHRIL WORKS」
https://www.pirocot.com/2018/06/tiny-tiny-rss.html

 

「サーバーインストール型 RSS リーダー “Tiny Tiny RSS” に乗り換え | ぶっちろぐ」
https://bucci.bp7.org/archives/24902

 

「Tiny Tiny RSS – セルフホスト型RSSリーダー探訪 | 備忘ノート」
https://note.spage.jp/archives/460

 

https://bucci.bp7.org/archives/24902
↑この記事では,実際に稼働している Tiny Tiny RSS を試せる URL とそのテストアカウントを提供してくださっていたので,Tiny Tiny RSS がどのような RSSリーダーかを判断するのに大変役に立ちました.ありがとうございました.

 

私の使い方では,Tiny Tiny RSS で十分そうです.
とはいえ,私は,2011年3月と4月の大地震で自分のサーバーの大破を経験していて,常用するツールを自分のサーバーで稼働させて使うのは気が進みません… .
しばらく悩んだのですが,

 

o サービス提供側の動向に振り回されない

o 数の制限は一切ない

o そもそも,無料プランのサービス利用では,もう選択肢がなさそう

o あとで Raspberry PI で手軽に再構築できるようにしておけば,サーバーが大破したり,自分が引っ越しをしたりするときにもすぐに元通りに稼働させられそう

 

と考え,「Tiny Tiny RSS」を自分で稼働させて,「Feedly」から移行することにしました.

 

 

 

 

 

==

2019年5月9日
Feedly に登録してある RSSフィードすべてを OPML エクスポートする方法.無料プランのままでもできたのですね.
https://noike.info/wp/knoike/2019/05/09/81565/

 

 

Pocket

Feedly に登録してある RSSフィードすべてを OPML エクスポートする方法.無料プランのままでもできたのですね.

Pocket

 

「Welcome to Feedly」
https://feedly.com/

 

 

Feedly に登録してある RSSフィードすべてを OPML エクスポートする方法.
無料プランのままでもできたのですね.有料プランでないとできない機能かと思い込んでいました.

 

 

1.

[アカウント] アイコンをクリックする.

Feedly_OPML_export_account.png


 

2.

メニューの [Organize Sources] をクリックする.

Feedly_OPML_export_Organize_Sources.png


 

3.

[Export OPML] ボタンをクリックする.
(これをなかなか見つけられませんでした… .)

Feedly_OPML_export_export_OPML_button.png


 

4.

[DOWNLOAD YOUR FEEDLY OPML] ボタンをクリックして,OPMLファイルをダウンロードする.

Feedly_OPML_export_Download_button.png


 

これで,Feedly に登録してある RSSフィードすべてを,OPMLファイルでバックアップできました.

 

 

 

 

==

 

2013年06月15日
Feedly が,お倒れになっている.
http://knoike.seesaa.net/article/366447352.html

 

2013年03月21日
feedly のよくないところは,RSS feed 中のアルファベットのキャピタライズ(大文字,小文字)を勝手に変えてしまうところだなぁ.DNA→Dna,KITTE→kitteとか.固有名詞とか Technical term のときは,見づらいだけでなく,誤解の素になると思うし,場合によっては誤表記になる.
http://knoike.seesaa.net/article/349320849.html

 

2013年03月17日
とりあえず,feedly を使い始めてみる.多勢に無勢,長いものに巻かれる.とりあえず,Chrome で使ってみているけれど,悪くない.Google Reader とはだいぶ違うけれど,これは慣れの問題かなー.たまに,待たされるけれど,概して速い.
http://knoike.seesaa.net/article/347494031.html

 

2013年03月14日
「Googleの“春の大掃除”で「Google Reader」他8サービスを終了」 やっぱりなー.
http://knoike.seesaa.net/article/346932531.html

 

2012年12月13日
Google Reader は未読件数(新着件数)の情報を以前よりも増して非同期に更新するように変えたらしく,同一画面内での不一致が起こりまくっている.「新着がない」という表示と「新着がある」という表示が同一画面内に混在している.
http://knoike.seesaa.net/article/306900648.html

 

2012年07月24日
Google Reader も SPDY 対応サイトになったっぽいけれど,今一歩,不調だ.
http://knoike.seesaa.net/article/282781041.html

 

2012年06月21日
Gmail は SPDY 対応サイトだけど,Google Reader は SPDY 対応サイトじゃないなー.
http://knoike.seesaa.net/article/276467952.html

 

2011年04月07日
「goo が RSS リーダーサービスを終了」
http://knoike.seesaa.net/article/194656181.html

 

2010年06月21日
goo RSS リーダーウェブ版が,お亡くなりになっているような気がする.
http://knoike.seesaa.net/article/153944719.html

 

2009年10月23日
私の使い方だと,jig でなく ibis でよさそう.
http://knoike.seesaa.net/article/152841290.html

 

2009年03月30日
ケータイ版の goo RSS リーダは,機能面がだいぶよくなっていた.
http://knoike.seesaa.net/article/152839418.html

 

2009年03月29日
goo RSS リーダ,設定がふっとんでる.
http://knoike.seesaa.net/article/152839422.html

 

2009年02月11日
結局のところ,goo RSS リーダを使ってみている.
http://knoike.seesaa.net/article/152839043.html

 

2009年02月03日
自分好みの RSS リーダって,ホントにないなー.
http://knoike.seesaa.net/article/152839103.html

 

2009年01月13日
既読記事もちょっとだけ表示してくれる RSS リーダって,すでにないだろうか?
http://knoike.seesaa.net/article/152838890.html

 

2011年01月19日
「あらゆるダウンタイムをお金で補填します」というよりも,「そもそも,ウチはダウンしないよ」という宣言っぽい.うーん,でもさー,
http://knoike.seesaa.net/article/181524422.html

 

 

 

Pocket