Show HN: Hacker Newsユーザーの個人ブログのOPMLリスト
(github.com/outcoldman)- Hacker Newsの Ask HN: Could you share your personal blog here? スレッドで集まった個人ブログをまとめ、よく使うRSSリーダーに取り込みやすい OPML 形式で提供
- 利用方法は list.opml をダウンロードしてRSSリーダーにインポートする流れで、HN投稿後に追加されたブログは listx.opml で別途提供
- リスト作成時には karma が1以下のユーザーを除外しており、スパムや使い捨てアカウントを無視するための基準としている
- リストは Hacker Newsユーザーの karma を基準に並べ替えられており、先頭のブログほど karma が高いユーザーのもの
- ユーザーはエディタでリストを編集し、上位10件または100件のブログだけを残したり、興味のないブログを削除したりできる
- すべてのコメントからブログURLを抽出できたわけではなく、正しく認識されたURLのみを解析しているため、リストは完全ではない
- 一部のブログはRSSフィードがない、または
<link rel="alternate" type="application/rss+xml" href="...">,<link rel="alternate" type="application/atom+xml" href="...">タグ内にRSSフィードがなく、漏れている可能性がある - 結果として1100件以上のブログが集まっており、ブログ内容の品質、業務中の閲覧安全性、使用言語は確認されていない
- リストの再生成は
go run ./main.go | tee > console.logで実行し、各ユーザーの karma と各ブログのRSSフィードを取得する必要があるため時間がかかる - コントリビューション方法は
listx.opmlにブログを手動追加する形で、list.opmlは上書きされるため直接追加しない仕組み - ライセンスは MIT
1件のコメント
Hacker News のコメント
以前の RSSルネサンス のスレッドもあわせて見るとよい: https://news.ycombinator.com/item?id=16907298
このリストが継続的に維持・更新されるといいし、この OPML ファイルをきちんと扱える良い RSS リーダーのおすすめも気になる
Omea Reader を試したが、多くのフィードを取り込めなかった
最近のスレッドの 600 個の URL だけでなく、昨年 4 月の似たスレッドや複数の インディーソース から毎日ランダムな記事を提供している: https://indieblog.page/rss
自分のブログはしばらくスレッドにあったのに、コンソール出力にはまったく含まれていないようだ: https://news.ycombinator.com/item?id=36596022
カルマが足りないのは分かるが、だとしたらその事実くらいはログ出力に残っているべきだった気がする
スパム防止の基準としてカルマの代わりに アカウント年齢 も考慮できるのか気になる。ここではかなり長く ROM ってきたし、自分のような人は珍しくないと思う
しばらく Node-RED[1] をいじっていて、Node-RED が好きなのでこれを Node-RED で作り直してみた
フロー[2]、つまりコードはオンラインで見られ、編集もできるが、デプロイはできない。フィード[3] はキャッシュされ、おおよそ 1 時間ごとに更新される
小さな Heroku サーバーなので落ちていたり、そのうち落ちるかもしれないが保証はできない
元のコードベースから多くのアイデアを借りた :)
[1]=https://nodered.org
[2]=https://demo.openmindmap.org/omm/#flow/a8d90fc15ab6990b
[3]=https://blog.openmindmap.org/example/hacker-news-personal-bl...
No feed: [https://tommasoamici.com](<https://tommasoamici.com>) by tommasoamici ( 216 ) no feed found for [https://tommasoamici.com](<https://tommasoamici.com>)これを見て、最近ブログを Astro に移行した際に RSSフィードのリンク を
headタグに入れるのを忘れていたことに気づき、今は修正したここには 不正な形式の URL がいくつかあるようだ
hrefがエンコードされているリストに
[https://url.com//feed.xml](<https://url.com//feed.xml>)形式が多いのを見ると、スクレイピングロジック を見直したほうがよさそうだ単に
[https://url.com/](<https://url.com/>)と/feed.xmlを連結しているのだろうか?HEADにある代替リンクから URL を抽出していた問題は、
//example.com/feed.rssと書く人もいれば、feed.rssや/feed.rssのように書く人もいることだそのためかなり間抜けな URL 解決ロジックを書いてしまったが、実際には Go ランタイムの ResolveReference を使うべきだった。最終版のリストではこの問題を修正する予定
index.htmlにあることを明確に指しているおそらく Hugo の標準動作だと思う
元のスレッドは見逃したが、自分のブログも含めてもらえるとうれしい
RSS Feed (en): https://backendhance.com/en/blog/index.xml
RSS Feed (de): https://backendhance.com/blog/index.xml
Linux Mint で OPML をテストするために RSS リーダーアプリ 5 個 をインストールしたが、Thunderbird、Liferea、Quitrss、それに名前を忘れたものを含む 4 つがファイルのインポートに失敗した
Gnome RSS は取り込み自体はできたが、遅く、しかもかなりバグっぽかった
一般的な RSS アプリが処理するにはファイルが長すぎるようで、一部のアプリは “incorrect format” エラーを出したので、フォーマットにも少し問題があるのかもしれない。Thunderbird もその一つだった
今は CPod を試していて、少し時間を与えている。20 分ほど経てば動くといいのだが
Web ベースの RSS リーダーならこのファイルをよりうまく扱えるのかも気になる
失敗したものには、見つからないもの、接続エラー、不正な URL エラーがいくつか混ざっていた
取り込み時にエラーが出るのか気になる
この XML は無効かもしれないので、数分後に再生成してみる
カルマがあと 20 万あればよいのだが、Hacker News でどうやってカルマを貯めるのかはよく分からない
もしかするとフォークして、ユーザーがブログ収集に必要な 最小カルマ を自分で指定できるようにすべきかもしれない
気に入るかどうかは各自で判断すればよさそうだ。100 は何が良いのか悪いのか分からないまま適当に置いた数字だった
これらのフィードをまとめた フィードのフィード を簡単に作る方法はあるだろうか? 全体を 1 つの RSS フィードとして見るような形だ